Description
(Text)
Will man für eine moderne Programmiersprache Code erzeugen, wird man schnell feststellen, dass man bei der Übersetzung gerne Befehle verwenden würde, die so von einer konkreten Maschine nicht bereit gestellt werden. Andererseits ändern sich die Instruktionssätze moderner Rechner so schnell, dass es auch gar nicht sinnvoll erscheint, den Compiler zu sehr auf zufälligerweise bereitgestellte Operationen festzulegen. Eine solche Festlegung könnte nämlich bedeuten, dass man nach wenigen Jahren den Compiler gänzlich neu schreiben müsste.Um dieses zu vermeiden wird ein Code für eine idealisierte Maschine Maschinen für imperative, funktionale, logische und objekt-orientierte Programmiersprachen vorgestellt. Dabei wird insbesonds auf die Übersetzungsschemata eingegangen, wie man für die jeweiligen konkreten Programmkonstrukte der Programmiersprache die Befehlsfolgen für die zugehörige virtuelle Maschine konstruiert. Neben einer vertieften Einsicht in allgemeine Konzepte von Programmiersprachen vermittelt unser Buch darum grundlegende Techniken zur Implementierung moderner Übersetzer.
(Table of content)
Die Übersetzung imperativer Programmiersprachen.- Übersetzung funktionaler Programmiersprachen.- Die Übersetzung logischer Programmiersprachen.- Die Übersetzung objektorientierter Programmiersprachen.
(Review)
Aus den Rezensionen: "Ein Übersetzer ... ist ein Programm, das einen in einer Quellsprache geschriebenen Programmcode in eine Zielsprache transformiert. ... R. Güting ... hat sich intensive mit dem Bau von Übersetzern beschäftigt. Das vorliegende Buch ist eine interessante Alternative mit teilweise anderen Akzenten. ... Eine ausführliche Erläuterung erfolgt jeweils am Beispiel einer imperativen, einer funktionalen, einer logischen und einer objektorientierten Programmiersprache. Ziel ist die Automatisierung von Vorgängen. - Angesprochen werden Fortgeschrittene, die gute Kenntnisse zumindest in einer imperativen Programmiersprache haben sollten." (Klaus Barckow, in: ekz-Informationsdienst Einkaufszentrale für öffentliche Bibliotheken, 2007, Issue 28)
(Author portrait)
Prof. Helmut Seidl lehrt an der Technischen Universität München, Garching
Contents
Die Übersetzung imperativer Programmiersprachen.- Übersetzung funktionaler Programmiersprachen.- Die Übersetzung logischer Programmiersprachen.- Die Übersetzung objektorientierter Programmiersprachen.