[CB-Logo]

Compilerbau II - Stand


[Compilerbau II] [Grammatik] [Gruppen] [Pflichten Scanner] [Pflichten Parser] [Pflichten CodeGen]

Weiterarbeit in der vorlesungsfreien Zeit

Die nächste Zusammenkunft ist Anfang August geplant. Dann sollten alle Gruppen ihre Programmteile inclusive Dokumentation und Arbeitsbericht fertig haben. In der Folgewoche wird dann versucht, alles zusammenzusetzen und mms- (bzw. mml-)Programme zum laufen zu bringen.
Die Dokumentation beschreibt die Benutzung des Programms: Aufruf, ggf. Optionen und deren Wirkung, Dateiformate der Ein- und Ausgabe, etc. Sie wird heute üblicherweise als Hypertext-Datei angefertigt.
Der Bericht einer Arbeitsgruppe beschreibt die inneren Aspekte der Implementation (z.Bsp. Datenstrukturen), wieso man so vorgegeangen ist, welche Probleme oder unerwartetet Effekte auftraten, wie man nach den gemachten Erfahrungen ggf. alternativ vorgehen würde, etc.

KW 25 (15.-21. Juni)

Bericht Scanner, KW 24

Bericht Parser, KW 24

Bericht CodeGen, KW 24

Erweiterung der Einlese-Prozedur: gleichzeitiger Aufbau der Id-Tabelle Weitere (und hinreichend genaue) Unterteilung der Aufgaben in Einzel- Prozeduren/Aufgaben "Entwicklung" der Prozedur decompose.

KW 24 (8.-14. Juni)

Bericht Scanner, KW 24

Im Verlauf der letzten Woche sind folgende Entscheidungen getroffen worden:
1. Da der Pascalcompiler am Matheinstitut nicht gerade der beste ist, haben wir uns doch überlegt, in C zu programmieren.

2. Die Debugger-Funktion wird ersteinmal vernachlässigt.

3. Ebenso werden wir zunächst die Minimierung des Zustandsautomaten vernachlässigen, da man dies auch gut noch nachträglich erledigen kann.

4. Ab jetzt wird intensiv implementiert, so daß in spätestens zwei Wochen der Scanner-Generator fertig ist.

Bericht Parser, KW 24

Bericht CodeGen, KW 24

KW 23 (1.-7. Juni)

-- Pfingstferien --

KW 22 (25-29. Mai)

Bericht Scanner, KW 22

Im Verlauf dieser Woche sind uns einige Zweifel darüber gekommen, ob wir in Pascal oder doch lieber C programmieren sollen, da der Pascalcompiler im Fachbereich 15 sehr schlecht ist. Entschieden darüber wird nach den Ferien, wenn Martin aus Sardinien wieder im Lande ist. Ansonsten haben sich in dieser Woche Wilm und Roman über ihre Schnittstellen unterhalten. Ein konkretes Ergebnis ist aber erst nach den Ferien zu erwarten. Weiterhin haben wir beschlossen, daß jeder sich in den Ferien gründlich mit seiner Aufgabe beschäftigt und eventuell schon einbißchen mit der Implementierung anfängt.

Bericht Parser, KW 22

Bericht CodeGen, KW 22

Na ja, eigentlich kein Bericht, aber die Gruppe hat das Pflichtenheft abgegeben, und auch die Absprachen mit den anderen Gruppen dokumentiert.

KW 22 (18-24. Mai)

Bericht Scanner, KW 21

(umfangreicher Bericht auf eigener Seite)

Bericht Parser, KW 21

Bericht CodeGen, KW 21

Also: Letzte Woche hat die Gruppe CodeGen die letzten Feinheiten des Datei- und Baumformats mit der zweiten Gruppe abgesprochen (es hat noch kleinere Änderungen gegeben). Außerdem haben wir schon mal die Routine programmiert, die die Datei einliest und in einen Baum zurückverwandelt. Übrigens hat Frank scheinbar einen nicht funktionierenden .forward- Eintrag, so daß er per e-mail nicht zu erreichen ist. )-:

Bericht zum Stand, 18 Mai 98

entsprechend dem Zeitplan haben alle Gruppen ihren Zwischenbericht vorgetragen. Leider liegen die Pflichtenhefte bzw. die sonstigen Berichte noch nicht vor -- und es scheint auch schwierig zu sein, Berichte zu bekommen. Deshalb nochmal der Hinweis an alle Teilnehmer:

Aufschreiben ist wichtig!


Ein Problem löst sich nicht dadurch, daß man es ignoriert. Es hilft aber meistens, aufzuschreiben, was einem nicht klar ist. Man findet dann idR. Punkte, die klar sind, und kann diese lösen. Bleiben nur noch unklare, kann man darangehen, Informationen dazu zu beschaffen, um sie zu lösen. Die unklaren Punkte sollten dann in Unterpunkte zerfallen, von denen einige lösbar sind, andere wieder unklar. Dann iteriert man das Verfahren ... Und schreibt dazu jeden Schritt auf!

Noch ein Hinweis zum aufschreiben: Zum skizzieren eines Problems bzw. dessen Lösung empfehlen einige Leute ein DIN-A4-Blatt im Querformat zu benutzen -- warum auch nicht :)

Zum eigentlichen Stand

Allen Gruppen ist nun in groben Zügen klar, was von ihnen erwartet wird, auch wenn die feinere Aufteilung in Teilprobleme noch sehr unscharf ist. Um voranzukommen, werden die meisten nun anfangen zu programmieren -- eine hier mögliche Vorgehensweise, da die Algorithmen im Skript skizziert sind. (Ich vermute allerdings, daß es noch erhebliche Probleme mit den zu verwendenden Datenstrukturen geben wird.)

Die Schnittstellen der Gruppen untereinander sind festgelegt, allerdings auch mehr "in Prosa". Eine schriftliche Fixierung hatte Gruppe 3 zu bieten -- allerdings möchte Gruppe 3 einen abstrakten Syntaxbaum, der z.Bsp. bei den binären Operatoren simplifiziert ist, wohingegen Gruppe 2 von der Ausgabe eines klassischen Syntaxbaumes ausgegangen war. Das Dateiformat eines Baumes war allerdings klar.
IfI Mathe WWU
Dietmar Lammers
Last modified: Wed Jul 8 15:45:37 MET DST 1998