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

Vergangene Veranstaltungen

Termin

Vorlesung: tbd

Übung: tbd