Institut für Computersprachen
Programmiersprachen und Übersetzer
| Diplomarbeit | |
| Titel | Entwicklung eines Compilers für die Programmiersprache Oberon |
| Autor | Posch, Franz |
| Erscheinungsjahr | 1989 |
| Abstract | Der Schweizer Informatiker Nikolaus Wirth, der bereits die Programmiersprachen Pascal und Modula-2 entwickelte, hat wiederum eine Weiterführung des Konzepts der strukturierten, modularen Programmierung vorgenommen und als Ergebnis seiner Forschungen die Programmiersprache Oberon vorgestellt. Als wesentliche Neuerung wurde das Konzept der erweiterbaren Datentypen eingeführt, d.h. die Konstruktion eines neuen Datentyps als Erweiterung eines benutzerdefinierten Typs. Aber auch die praktischen Erfahrungen der Anwender der Vorgängersprache Modula-2 waren Grundlage für verschiedene Vereinfachungen und Modifikationen. Die Erstellung des Spracherkenners erfolgte in der Programmiersprache C unter Verwendung der im Betriebssystem UNIX verfügbaren Programmgeneratoren Lex und Yacc für die lexikalische und syntaktische Analyse. Nach Abschluß des Praktikums kamen Dr. Schikuta und ich überein, daß ich dieses Projekt als Diplomarbeit weiterführen sollte. Ziel war die Entwicklung eines Übersetzers für Oberon in eine einfache Sprache und eines Interpreters, der den erzeugten Code ausführt. Ausgangspunkt für meine Arbeit war der erstellte Spracherkenner, den ich nun schrittweise zu erweitern hatte. Die einzelnen Phasen dieser Entwicklung sind in dem vorliegenden Buch beschrieben. Es kann damit als Dokumentation der Entstehung eines Übersetzers für eine strukturierte prozedurale Programmiersprache angesehen werden. Die grundlegenden Konzepte, die hier verwendet wurden, können vielleicht auch dem interessierten Leser selbst Einblicke und Anregungen in Bezug auf die im Bereich des Compilerbaus verwendeten Techniken geben. In diesem Zusammenhang möchte ich besonders auf zwei Werke verweisen, deren Studium mir eine wertvolle Hilfestellung bei der Durchführung dieser Afugabe war. In dem Werk "Introduction to Compiler Construction with UNIX" ist die Anwendung der Programmierwerkzeuge Lex und Yacc zur Konstruktion eines Compilers anhand eines Beispielfalles demonstriert. Theoretische Grundlagen und konkrete Techniken des Übersetzerbaus sind in dem Buch "Compilers: Principles, Techniques, and Tools" von Aho/Sethi/Ullman ausführlich und einsichtig beschrieben. |
| Status | Verfügbar |