Compiler

Ein Compiler (Kompilierer) ist ein Software-Werkzeug bzw. Computerprogramm. Wenn es in eine höhere Programmiersprache implementiert wird, transformiert es den geschriebenen Code Beispielsweis Java Code in Maschinensprache (Nullen und Einsen). Das heißt der Code wird so übersetzt, dass es direkter von einem Computer ausgeführt werden kann. Die Programmierung von Compilern ist eine eigenständige Disziplin der Informatik. Moderne Compiler sind in verschiedene Phasen gegliedert, die auch als eigenständige Programme agieren können. Dabei lassen sich im Grunde zwei Phasen unterscheiden: Das Frontend (Analysephase) und das Backend (Synthesephase).

Vor der Übersetzung des Quellcodes in Maschinensprache wird eine Syntaxprüfung durchgeführt, um festgestellte Fehler zu protokollieren. Darauf wird die entstandene Zwischendarstellung analysiert und optimiert. Dies kann je nach Aufwand stark variieren. Bei der Codeerzeugung werden die Befehle des Codes in die Zielsprache übersetzt.