Bytecode vs CLI

Nie zawsze kto pierwszy, ten lepszy

Mirosław Szymański

marzec 2004
  1. Cechy wspólne
    • maszyna stosowa
    • brak rejestrów
    • 1-bajtowe instrukcje
  2. Różne założenia projektowe i konsekwencje tych założeń.
    • bytecode - interpretowany
    • CLI - kompilowany (JIT)
  3. Wspomaganie wielu języków programowania
    • .NET - duże możliwości
      • np. wariacje instrukcji arytmetycznych - przepełnienie może powodować wystąpienie wyjątku lub nie
    • JVM - duże ograniczenia
        np. brak przekazywania parametrów przez referencje
  4. Porównanie wybranych konstrukcji programistycznych
    • operacje arytmetyczne
    • wywoływanie metod
    • klasy zagnieżdżone
    • wyjątki
    • ...
  5. Kierunki rozwoju
    • .NET - dodanie możliwości interpretacji (preprocesor)
    • JVM - rozbudowanie JVM o klasy zagnieżdżone, szablony, inne sposoby przekazywania parametrów
  6. Literatura