Module Number

INFO-4246
Module Title

Compiler Construction
Lecture Type(s)

Lecture, Tutorial
ECTS 9
Work load
- Contact time
- Self study
Workload:
270 h
Class time:
90 h / 6 SWS
Self study:
180 h
Duration 1 Semester
Frequency Irregular
Language of instruction German and English
Type of Exam

Written or oral exam; Successful participation in the exercise is a prerequisite for the exam.

Content

How does the translation of a high-level programming language into machine instructions work? An understanding of this is not only of interest to compiler developers, but any good programmer should know how modern compilers and virtual machines work: On the one hand, it allows a deeper understanding of what happens when a program is executed; on the other hand, many of the technologies from compiler construction can be usefully applied in many other programs. Some keywords about the content: parsing, abstract syntax trees, intermediate representations, data flow analysis, register allocation, optimizations, runtime systems and virtual machines, compilers for object-oriented and functional languages.

Objectives

Students will be able to understand the different phases of a compiler. They can independently implement compilers for simple programming languages and understand the trade-offs and alternatives that exist when designing and selecting compiler technologies.

Allocation of credits / grading
Type of Class
Status
SWS
Credits
Type of Exam
Exam duration
Evaluation
Calculation
of Module (%)
Prerequisite for participation There are no specific prerequisites.
Lecturer / Other Brachthäuser, Ostermann
Literature

Literatur: Jeremy Siek, Essentials of Compilation, MIT Press, 2023.

Last offered unknown
Planned for currently not planned
Assigned Study Areas INFO-INFO, INFO-PRAK, MEDI-APPL, MEDI-INFO, ML-CS