| 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.
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.
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
-- Pfingstferien --
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.
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.
Dietmar Lammers
Last modified: Wed Jul 8 15:45:37 MET DST 1998