Dissertation

Incremental LR(1) Parser Construction as an Aid to Syntactical Extensibility

Entstehung

1974/75 hatte ich in meiner Diplomarbeit an der TU München bereits einen Parsergenerator auf SLR(1)-Basis geschrieben. Nach einem 15-monatigen Berufsbeginn als Informatiker bei der Softlab AG nahm ich an der Universität Dortmund eine befristete Stelle in einem Drittmittelprojekt in Zusammenarbeit mit Kienzle an mit dem Ziel, neben der Projektarbeit auf dem Gebiet des Compilerbaus zu promovieren.

Nach verschiedenen vorbereitenden Tätigkeiten, darunter

schrieb ich die vorliegende Dissertation in der ersten Hälfte des Jahres 1980. Die mündliche Prüfung fand am 30.6.1980 nachmittags in den letzten Dienststunden meines Anstellungsvertrags statt. Der Pflicht, der Univrsitätsbibliothek 150 Exemplare der Arbeit zu liefern, genügte ich durch Abgabe von (wesentlich preiswerteren) Microfiches.

Außer den Mitgliedern der Prüfungskommission habe wahrscheinlich wenige Informatiker damals die Arbeit gelesen. Google bringt aber immerhin einen Verweis zu Tage, der auch bemerkt, dass die Arbeit einer der ersten Versuche einer inkrementellen Konstruktion von LR(1)-Parsern ist.

Textverarbeitungssystem

Den gesamten Text der Doktorarbeit (bis auf den Graphen auf S. 37) erfasste ich an einem Terminal und druckte die Arbeit auf einem Kettendrucker im Rechenzentrum der Universität aus. Fettdruck, Unterstreichungen und eine Reihe mathematischer Zeichen erzeugte ich durch Übereinanderdrucken von zwei Druckausgabezeilen.

Ich entwickelte dazu eine einfache Form von Text-Steuersprache, die ich mit einem PL/1-Programm ARBEIT in die passenden Druckzeilen mit Vorschubsteuerzeichen umsetzte.

Rekonstruktion nach 22 Jahren

Die damaligen 28 Einzeldateien speicherte ich auf einem AMBOSS-System, das als Front-End für die BS2000-Maschine benutzt wurde, auf 8"-Disketten im IBM-2-Format (in EBCDIC). Die Dateien auf diesen Disketten konnte ich Anfang der 90-er Jahre in einem Laufwerk an einem IBM-kompatiblen PC mit Hilfe des von mir entwickelten und später vertriebenen Konvertierungsprogramms ptIBM einlesen und als ASCII-Dateien abspeichern.

Das ursprüngliche PL/1-Programm ARBEIT ist in einigen tausend anderen Programmen untergegangen. Im Juni 2002 schrieb ich deshalb ein perl-Programm arbeit.pl, das wie damals die Steuercodes für Überdrucken in mathematische Zeichen, Fettdruck und Unterstreichungen auflöst, nur dass sie diesmal nach HTML umgesetzt werden. Das Programm fügt jetzt zusätzlich im Inhaltsverzeichnis einige Hyperlinks ein, von denen man damals noch nichts wusste.

Bitte benutzen Sie einen modernen Browser wie etwa Mozilla, damit die mathematischen Symbol wie z.B. ∀ (∀) richtig dargestellt werden.

Mit einem passenden makefile kann ich nun die Arbeit hier weitgehend identisch mit dem Ausdruck reproduzieren:

Forschungsbericht Nr. 102, 1980

Abteilung Informatik, Universität Dortmund
Forschungsbericht Nr. 102, 1980

Letzte Änderung: 2.10.2002
Bitte richten Sie Fragen oder Kommentare an: <punctum@punctum.com>, Dr. Georg Fischer.