HOME | ENGLISH | IMPRESSUM | KIT

Compilerpraktikum

Themen

Im Compilerbaupraktikum entwickeln Teams von 4-5 Studenten einen Compiler für eine imperative Teilmenge von Java. Zielsprache ist Java Bytecode. Dabei kommen die Techniken und Werkzeuge aus der Veranstaltung "Sprachtechnologie und Compiler" zum Einsatz. Die Veranstaltung "Sprachtechnologie und Compiler II" muss nicht gleichzeitig gehört werden. Das Praktikum ist in Form eines softwaretechnischen Phasenmodells organisiert.

Zu entwickelnde Artefakte:

  • Scannerspezifikation
  • Parser mit rekursivem Abstieg
  • Abstrakte Syntax/Baumaufbau
  • Symboltabelle
  • Attributierte Grammatik zur Typprüfung
  • Codegenerierung
  • Elementare Programmanalysen/Optimierungen

Am Ende soll ein vollständiger, lauffähiger, getesteter Compiler stehen.

Das Praktikum ist prüfbar.

Zeitplan

Wir treffen uns einmal wöchentlich um eine Einführung in die Themen zu geben (ca. 45 Minuten). Dabei wird auch auf Fragen und Probleme eingegangen. Danach können die Gruppen unter sich planen und implementieren.

Ort: 2. Stock im AVG (Gebäude 50.41) Seminarraum 207

Datum Ort Thema Unterlagen
13.4.2011 14:00 UhrAVG 207 Organisatorisches, Einleitung [Folien]
20.4.2011 15:45 UhrAVG 207 Lexer [Folien]
27.4.2011 15:45 UhrAVG 207 Parser [Folien]
04.5.2011 15:45 UhrAVG 207 AST-Aufbau [Folien]
11.5.2011 15:45 UhrAVG 207 Semantische Analyse [Folien]
18.5.2011 15:45 UhrAVG 207 Firm-Aufbau [Folien]
jFirm 1.19.1 (veraltet) [Download]
yComp [Download]
25.5.2011 15:45 UhrAVG 207 Firm-Aufbau
01.6.2011 15:45 UhrAVG 207 Datenflussanalyse, Konstantenfaltung [Folien]
jFirm 1.19.1.1 [Download]
08.6.2011 15:45 UhrAVG 207 Lokale Optimierungen [Folien]
jFirm 1.19.1.1a [Download]
jFirm 1.19.1.2 [Download]
jFirm 1.19.1.3 [Download]
15.6.2011 15:45 UhrAVG 207 Codeerzeugung [Folien]
06.7.2011 15:45 UhrAVG 207 Informationen zur Abschluss-Präsentation [Folien]
13.6.2011 15:45 UhrAVG 207 Abschluss-Präsentation [Folien]

Übungsblätter

Übungsblätter PDF
13.4.2011 Einarbeiten Download
13.4.2011 MiniJava Sprachbericht Download
20.4.2011 Lexer Download
27.4.2011 Parser Download
04.5.2011 AST-Aufbau, Pretty-Printer Download
11.5.2011 Semantische Analyse Download
18.5.2011 Firm-Aufbau Download
01.6.2011 Konstantenfaltung Download
08.6.2011 Lokale Optimierungen Download
15.6.2011 x86-Assembler Download

Veranstalter

Lehrstuhlinhaber
Prof. Gregor Snelting
Wissenschaftliche Mitarbeiter
Sebastian Buchwald
Ehemalige Mitarbeiter
Dipl.-Inform. Matthias Braun