Welcome to this year's Compiler Construction Core Lecture at Saarland University.
If you consider participating in the course, please register here and in the corresponding Team in time for the first lecture.
Have a great semester!
The course treats compiler construction for imperative programming languages. This includes lexical, syntactical, and semantic analysis as well as static program analysis, optimization, and code generation. This course provides all necessary theoretical knowledge required to implement a compiler from scratch, which forms the practical part of the lecture.
- Lexing and Parsing (LL, LR)
- Semantic Analysis, Type Checking
- Foundations of Program Analysis by Abstract Interpretation
- Program Optimizations and their Analyses
- Instruction Selection
- Register Allocation
- Polyhedral Compilation
- Place: Online (via Microsoft Teams)
- Time: Tuesday 16-18 (c.t.) and Friday 10-12 (c.t.) CET
- First Meeting: Tuesday 2020-11-03, 16-18 (c.t.) CET
- c.t. = cum tempore = an old tradition of some European universities.
Here, it means that the actual time is the announced time +15 minutes
If you are interested in participating but not enrolled at Saarland University, please send a mail to Sebastian Hack to get access to the course.
There will be voluntary exercise sheets that are discussed in tutorials.
To get a course certificate, students must pass the final exam and the project. If you pass both, the exam and the project, the final grades for the course will be computed as the (equally weighted) arithmetic mean between your exam grade and your project grade, rounded towards your exam grade.
The practical project is to be implemented in C++ by groups of 2-3 students. In the end of the lecture period, we will host a competition for the student compiler implementations. The top performing groups of the competition will earn a 0.3 (or 0.4) bonus to their total course grades.