Nummer INF3182 |
Titel Compilerbau |
Art der Vorlesung Wahlpflicht |
---|---|---|
ECTS | 9 | |
Arbeitsaufwand - Kontaktzeit - Selbststudium |
Arbeitsaufwand:
270 h Kontaktzeit:
90 h / 6 SWS Selbststudium:
180 h |
|
Veranstaltungsdauer | 1 Semester | |
Häufigkeit des Angebots | Im Wintersemester | |
Unterrichtssprache | Deutsch | |
Prüfungsform | Klausur oder mündliche Prüfung; erfolgreiche Übungsteilnahme ist Prüfungsvoraussetzung. |
|
Lehrform(en) | Vorlesung, Übung | |
Inhalt | Wie funktioniert die Übersetzung einer hochsprachlichen Programmiersprache in Maschineninstruktionen? Ein Verständnis davon ist nicht nur für die Entwickler von Compilern interessant, sondern jeder gute Programmierer sollte wissen, wie moderne Compiler und virtuelle Maschinen funktionieren: Auf der einen Seite ermöglicht es ein tieferes Verständnis davon, was passiert, wenn ein Programm ausgeführt wird; auf der anderen Seite sind viele der Technologien aus dem Compilerbau auch in vielen anderen Programmen sinnvoll verwendbar. Einige Stichworte zum Inhalt: Parsing, Abstrakte Syntaxbäume, Zwischenrepräsentationen, Datenflussanalyse, Registerallokation, Optimierungen, Laufzeitsysteme und virtuelle Maschinen, Compiler für objektorientierte und funktionale Sprachen. |
|
Qualifikationsziele | Die Studierenden sind in der Lage, die unterschiedlichen Phasen eines Compilers zu verstehen. Sie können selbstständig Compiler für einfache Programmiersprachen implementieren und verstehen die Abwägungen und Alternativen, die es beim Design und der Auswahl von Compilertechnologien gibt. |
|
Vergabe von Leistungspunkten/Benotung |
Lehrform
Status
SWS
LP
Prüfungsform
Prüfungsdauer
Benotung
Berechnung
Modulnote (%) |
|
Teilnahmevoraussetzungen | Es gibt keine besonderen Voraussetzungen. | |
Dozent/in | Alle Dozenten | |
Literatur / Sonstiges | Andrew W. Appel, Modern Compiler Implementation in ML, Cambridge University Press. |
|
Zuletzt angeboten | nicht bekannt | |
Geplant für | derzeit nicht geplant | |
Zugeordnete Studienbereiche | BIOINFM2510, INFM2510, INFM3110, MDZINFM2510, MEINFM3210 |