Interpreter

Ein Interpreter übersetzt den Quelltext einer Programmiersprache Anweisung für Anweisung und führt ihn direkt aus. Die Analyse erfolgt also zur Laufzeit des Programmes. Es wird im Unterschied zu Compilern und Assemblern keine auf dem System direkt  ausführbare Datei erstellt. Nachteil von Interpretern ist die geringere Ausführgeschwindigkeit. So müssen beispielsweise Anweisungen in Schleifen bei jeder Iteration neu übersetzt werden.  Bekannte Interpretersprachen sind: BASIC, PHP, Perl, Python, Ruby.

Just-in-Time Compiler sind Zwischenlösungen und können einen Geschwindigkeitsvorteil erbringen.  Auch hier wird das Programm zur Laufzeit übersetzt, jedoch direkt in Maschinencode, der direkt vom Prozessor ausgeführt wird. Da der Maschinencode  zwischengespeichert wird, müssen mehrfach zu durchlaufende Programmteile nur einmal übersetzt werden. Ein Bytecode-Interpreter wiederum übersetzt den Quelltext zur Laufzeit vor seiner Ausführung in Zwischencode. Dieser Zwischencode wird von einem  Interpreter ausgeführt (virtuelle Maschine).                                               
Siehe auch:    Compiler   PHP   JIT-Compiler   BASIC   Quellcode   Parser   Linker   Lexer