Compilerbau wird im WS2023/2024 angeboten. Die erste Vorlesung ist am 18.10. in O27/123 um 10 Uhr. Dort bekommt ihr alle wichtigen Informationen. Einschreibung bitte per Moodlekurs.
Compilerbau
Voraussetzungen
Die Vorlesung richtet sich in erster Linie an Bachelor- und Master-Studierende aus Informatik, Medieninformatik und Software Engineering.
Folgende Kurse werden zum Besuch der Vorlesung vorausgesetzt:
- Grundlagen der theoretischen und technischen Informatik (vgl. Formale Grundlagen und Grundlagen der Rechnerarchitektur)
- Objektorientierte Programmierung (vgl. Programmierung von Systemen)
Ziele
- Grundlegende Kenntnisse über den Aufbau und die Arbeitsweise von Compilern
- Verständnis für die Notwendigkeit und die Probleme der einzelnen Compilierungsphasen
- Anwendung von Wissen aus der theoretischen und technischen Informatik
- Verständnis über den Aufwand zur Übersetzungszeit und Laufzeit von verschiedenen Sprachkonstrukten
Inhalte
- Aufbau und Arbeitsweise von Compilern
- Lexikalische Analyse
- Syntaktische Analyse mit Top-Down und Bottom-Up Parsern
- Fehlerbehandlung, Konkrete und Abstrakte Syntax
- Semantische Analyse mit Inferenzregeln und attributierten Grammatiken
- Namens- und Typanalyse
- Zwischen- und Maschinensprachen
- Übersetzung von Variablen, Ausdrücken, Anweisungen, Prozeduren, objektorientierten Programmen
- Optimierungen und Garbage Collection
Literatur
- Alfred V. Aho, Monica S. Lam, Ravi Sethi, and Jeffrey D. Ullman. 2006. Compilers: Principles, Techniques, and Tools (2nd Edition). Addison-Wesley Longman Publishing Co., Inc., USA.
- Andrew W. Appel and Jens Palsberg. 2003. Modern Compiler Implementation in Java (2nd. ed.). Cambridge University Press, USA.
- Helmut Seidl, Reinhard Wilhelm, Sebastian Hack. 2011. Compiler Design: Analysis and Transformation, Springer.
- Helmut Seidl, Reinhard Wilhelm, Sebastian Hack. 2011. Compiler Design: Syntactic and Semantic Analysis, Springer.
- Reinhard Wilhelm und Dieter Maurer. 1997. Übersetzerbau. Theorie, Konstruktion, Generierung. 2. Aufl. Berlin. Springer.
Vergangene Veranstaltungen
Kontakt
Termin
Vorlesung: Mittwoch 10.00 - 11.30 Uhr
in O27-123 (1. Vorlesung: 18.10.)
Übung: Dienstag 14.15 - 15.45 Uhr
in O27-123
Weitere Informationen