Generierung portabler Compiler
Das portable System POCO
Michael Eulenstein
Das vorliegende Buch, das aus der Saarbrücker Dissertation des Verfassers entstanden ist, beschreibt ein konkretes System zur automatischen Generierung von Compilern. Das System ist für die Anwendung in der Praxis konzipiert. Es werden die Entwurfskriterien, die zu dem System geführt haben, und die vollständige Realisierung des Generators dargestellt. Aus der Struktur und der Funktionsweise von Compilern werden die Komponenten eines Compiler-Generators abgeleitet. Die Generierungsverfahren und die zugrundeliegenden theoretischen Konzepte werden vorgestellt. Die Spezifikation einer Programmiersprache (als Eingabe in den Generator) und die vom Generator erzeugte Ausgabe (ein lauffähiger Compiler) werden detailliert erläutert. Es werden Ergebnisse präsentiert, die durch praktische Anwendung des Systems erhalten wurden. Schwerpunkt des Buches ist die Generierung portabler Compiler. Dieses Ziel ist ein Entwurfskriterium für das System und wird durch die direkte Generierung von Compiler-Komponenten in Zwischensprachform erreicht. Als Zwischensprache wurde aus mehreren Kandidaten p-Code gewählt. Es wird gezeigt, daß die direkte Generierung eines Compilers eine Reihe von Optimierungen zuläßt; sie lassen sich aus Informationen ableiten, die auf Generatorebene zur Verfügung stehen. Diese Optimierungen bewirken sowohl Laufzeit- als auch Speicherplatzreduktionen im generierten Compiler.