Compiler
Autoren
Mehr zum Buch
Compiler Grundsätze, Techniken und Werkzeuge: das „Drachenbuch“ von Aho, Sethi und Ullman gilt als das unumstrittene Referenzbuch des Compilerbaus. Das Autorenteam, verstärkt durch die weltberühmte Informatikerin Monica Lam, hat das Standardwerk in einer zweiten Auflage komplett überarbeitet veröffentlicht. Es bietet eine in allen Aspekten detaillierte Einführung in die Theorie und Praxis des Compilerbaus. Das Buch stellt, beginnend mit der Beschreibung der Grammatik einfacher Sprachen, die Grundideen vor, die hinter der Compiler-Technologie stehen und vertieft dann im zweiten Teil die vorgestellten Techniken. Die Autoren behandeln wichtige Themen wie die lexikalische Analyse, die Syntaxanalyse, Typüberprüfung, Zwischencodegenerierung, Codeoptimierung und Softwaredesign. Neu hinzugefügt wurden vier Kapitel, die sich mit der Laufzeitumgebung sowie den Besonderheiten moderner Prozessorarchitektur beschäftigen. Dieses geballte Wissen wird in Praxisbeispielen effizient zusammengeführt. Dabei wird die Verwendung der Werkzeuge wie lex und yacc in Beispielen demonstriert. Das ursprüngliche Drachenbuch stützte sich auf die Werkzeuge lex und yacc, um Compiler in der Programmiersprache C zu entwickeln. Um den heutigen Ansprüchen gerecht zu werden, beinhaltet die Neuauflage das Übersichtskapitel 2, zusammen mit Anhang A, deshalb ein komplett in Java entwickeltes Compiler Front-End. Da die restlichen Kapitel (insbesondere Kapitel 3, 4 und 5) immer noch auf lex und yacc aufbauen, wurde in der deutschen Übersetzung der Anhang C hinzugefügt. Dieser stellt das Werkzeug SableCC vor, mit dem Lexer und Parser in Java erstellt werden können. Vorgestellt wird auch, wie man mit SableCC abstrakte Syntaxbäume generieren und Analysephasen implementieren kann. Der Anhang C sowie die CWS-Webseite zu diesem Buch enthalten zusätzliche Übungen. Diese Ergänzungen ermöglichen den Einsatz dieses Buches sowohl für die Lehre, basierend auf Java, als auch die praktische Anwendung des Wissens für Informatiker, die in Java entwickeln. Wahrlich ein „Drachenbuch“ Dieses Buch richtet sich an Studierende und Praktiker aus der Informatik und an alle, die effizienten Code entwickeln wollen. Begleitend zum Buch dazu gibt es Lösungsansätze zu den Aufgaben und alle Abbildungen aus dem Buch als Foliensatz. Inhalt Struktur eines Compilers Evolution der Programmiersprachen Wissenschaft des Compilerbaus Anwendungen der Compilertechnologie Grundlagen von Programmiersprachen Ein einfacher syntaxgerichteter Übersetzer Lexikalische Analyse (neu) Syntaktische Analyse Syntaxgerichtete Übersetzung Zwischencodeerzeugung Laufzeitumgebungen (neu) Codeerzeugung Maschinenunabhängige Optimierungen Optimierungen für Parallelität und Lokalität (neu) Interprozedurale Analyse (neu)