News

Action Required: Exam Registration, Project Discussion Scheduling

Written on 23.01.26 (last change on 23.01.26) by Joachim Meyer

tl;dr:

  • first exam: register now! 10 Feb 2026, 09:00-11:00 in LH 002, building E1 3.
  • fill in the poll linked on the Materials page to schedule a project discussions for your group by 06 Feb 2026
  • deadline for the project is the 13 Feb 2026, 18:00
  • office hour: 03 Feb 2026 10:00-11:30
  • fill… Read more

tl;dr:

  • first exam: register now! 10 Feb 2026, 09:00-11:00 in LH 002, building E1 3.
  • fill in the poll linked on the Materials page to schedule a project discussions for your group by 06 Feb 2026
  • deadline for the project is the 13 Feb 2026, 18:00
  • office hour: 03 Feb 2026 10:00-11:30
  • fill in the poll for the project competition presentation

Hi all,

the first exam will take place on 10 Feb 2026, 9-11 in E1.3 LH 002. You can register until one week before the exam date. Register in LSF now, so you don't forget! If you cannot register in LSF and want to get a Schein, please register by writing an E-Mail to Joachim Meyer. Taking the exam to get a Schein is on your own risk. We cannot guarantee that the Schein will be accepted for your study program.

The project discussions will take place from Thursday, 19 Feb 2026, until Tuesday, 24 Feb 2026, in person in room 4.01, E1.3. Please enter your group's preferences for timeslots on these days in the poll linked on the Materials page in the CMS until no later than Friday, 06 Feb 2026. Only one person should enter the preferences per group (under the group's name), please agree on them beforehand. Select as many time slots as possible where all group members are available. Your meeting will take place in a ~25-minute period within one of the selected time slots. We will announce the exact times for each group once we have assigned them after 06 Feb 2026.

To pass the project and thus the course, students must participate in their group's project discussion. At least one group member should have the project source code and a working build available on a laptop.

As a reminder: the hard deadline for the project is the 13 Feb 2026, 18:00. Anything that is changed after this deadline will not be considered.

There will be one last office hour to discuss questions regarding the project: 3 Feb 2026, 10:00-11:30.

We have also added a poll to schedule the project competition presentation after the project discussions. Please find the link in the Materials section and fill it in, by 06 Feb 2026.

Best, the CC Team

Office Hour Jan 13th, No Tutorial on Jan 12th

Written on 07.01.26 by Joachim Meyer

Happy New Year, everyone!
We hope you had a good and quiet festive season and are now ready to finish the semester :-)

We will offer another office hour next Tuesday, Jan 13th at 10-11:30.
The office hour will be related to the project phases: LLVM Code Gen & Alias Analysis (which will be… Read more

Happy New Year, everyone!
We hope you had a good and quiet festive season and are now ready to finish the semester :-)

We will offer another office hour next Tuesday, Jan 13th at 10-11:30.
The office hour will be related to the project phases: LLVM Code Gen & Alias Analysis (which will be published tomorrow by noon).

There will be no tutorials on Jan 12th.
If you have any questions you'd like to review, please use the forum.

The next exercise sheet will be handed out on Tuesday, Jan 13th.

Lectures This Week

Written on 15.12.25 by Joachim Meyer

As we are approaching the winter break, we will skip tomorrow's lecture and have a Christmas Lecture on Thursday (Dec 18).

Additionally, there will be no exercise sheet tomorrow - so use the time to recap the lecture contents & exercises thus far and work on the project!

While the tutorials will… Read more

As we are approaching the winter break, we will skip tomorrow's lecture and have a Christmas Lecture on Thursday (Dec 18).

Additionally, there will be no exercise sheet tomorrow - so use the time to recap the lecture contents & exercises thus far and work on the project!

While the tutorials will restart Jan 5 with a recap (bring your questions!), the first lecture next year will be Jan 13.

Course Evaluation

Written on 11.12.25 by Sebastian Hack

Dear all, we'd be very happy if you could fill out the course evaluation forms (one for the lecture, one for the tutorial). Any constructive criticism is very welcome and has helped us in the past to improve the course. Your opinion matters! You can find the links in the Material section of the CMS.

Expression Parsing & Semantic Analysis Office Hour: 09.12. 10:00-11:30

Written on 03.12.25 by Joachim Meyer

We will offer an Office Hour for the project, next Tuesday, Dec 9, 10-11:30, Room E1.3 4.01.
The first project phase is coming to a close with the soft deadline approaching next Wednesday & the release of the new assignment next week.
This office hour is the place to get help and hints on issues you… Read more

We will offer an Office Hour for the project, next Tuesday, Dec 9, 10-11:30, Room E1.3 4.01.
The first project phase is coming to a close with the soft deadline approaching next Wednesday & the release of the new assignment next week.
This office hour is the place to get help and hints on issues you might still have with the first project phase.

Also, we just released this week's exercise sheet, with a bit of a delay. Please find it in the Material section.

Group Project Registration Deadline Tonight & Project Start Tomorrow

Written on 11.11.25 by Joachim Meyer

Hi!

Just a quick reminder that the group project registration deadline is tonight, 23:59!
So, if you haven't done so, find a team and follow the registration steps at: https://cms.sic.saarland/cc2526/4/How_to_Attend

The first project assignment will be released tomorrow at noon.
We will have… Read more

Hi!

Just a quick reminder that the group project registration deadline is tonight, 23:59!
So, if you haven't done so, find a team and follow the registration steps at: https://cms.sic.saarland/cc2526/4/How_to_Attend

The first project assignment will be released tomorrow at noon.
We will have several project phases, for which we propose soft deadlines for your own convenience.
In the week before the soft deadline, we will host office hours to discuss your issues with the current phase - these will be announced separately.
After each soft deadline, we will release the next phase's assignment.

Good luck!

Solo Project Deadline Approaching - Grading Information

Written on 05.11.25 by Joachim Meyer

Hi all,

here's a reminder that the solo project has a hard deadline for submission, this Sunday, Nov 9th, 23:59 CET.
Please ensure that the state of the project you want to hand in is available on the main branch of your regexfe repository in our GitLab.
If you do not see your project on the… Read more

Hi all,

here's a reminder that the solo project has a hard deadline for submission, this Sunday, Nov 9th, 23:59 CET.
Please ensure that the state of the project you want to hand in is available on the main branch of your regexfe repository in our GitLab.
If you do not see your project on the progress page yet, there is something wrong, and we will not grade your project. So do get in contact with us if that is the case.

The group project phase starts next week.
The registration for this ends on Tuesday, Nov 11th, 23:59 CET.
Please find yourselves a group of 2-3 and follow the respective paragraph for registration from: https://cms.sic.saarland/cc2526/4/How_to_Attend

We also want to make sure you understand what the impact of the solo project is with regard to your final grade.
Our already communicated grading statement is: "To get a course certificate, students must pass the final exam and the projects. If you pass both, the exam and the projects, 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 solo project accounts for 20% of the project grade.
As the project grade accounts for ~50% (only approximately due to the rounding towards the exam grade) of the final course grade, the final impact of the solo project is ~10%.
You do not have to pass the solo project to be able to continue the course.
However, you have to pass the project part of the course, so if you don't do the solo project, you have to get at least 62.5% on the group project to pass the course.
For the grade, we do consider the number of tests that your implementation passes.
We have no hidden tests, so the tests that count are exclusively the tests that you already get feedback on at: https://cc.cdl.uni-saarland.de/results/progress.php
To determine the final project grade, we will have a project discussion with each group after the semester.
There, we will discuss both the solo and the group projects to verify your level of contribution to the projects.

Good luck!

Solo Project Office Hour Nov 4. 10-11:30

Written on 29.10.25 by Joachim Meyer

We will offer an Office Hour for the project, next Tuesday, Nov 4, 10-11:30, Room E1.3 4.01.

This office hour is the place to get support with the RegEx project and receive hints on what might be missing to pass more tests.

We refined the project description in a few places, so it might be a… Read more

We will offer an Office Hour for the project, next Tuesday, Nov 4, 10-11:30, Room E1.3 4.01.

This office hour is the place to get support with the RegEx project and receive hints on what might be missing to pass more tests.

We refined the project description in a few places, so it might be a good time to have a look at the updates.
The new version can be found in the Materials list, and an overview of the errata can be found in the forum: https://cc-discourse.cdl.uni-saarland.de/t/regex-project-errata-common-issues/

Please remember, the project is due 2025-Nov-9, 23:59, CET.
This is a hard deadline!

 

First Exercise Sheet available & Project Registration closes tonight

Written on 21.10.25 by Joachim Meyer

Hello everyone,

please note that the first exercise sheet is now available in the Materials section.

Secondly, a quick reminder that the project registration will close tonight, 23:59.
If you haven't followed the solo project registration steps from the How To Attend page, this is your last… Read more

Hello everyone,

please note that the first exercise sheet is now available in the Materials section.

Secondly, a quick reminder that the project registration will close tonight, 23:59.
If you haven't followed the solo project registration steps from the How To Attend page, this is your last reminder to do so.

We will make the assignment for the solo project available in the Materials section tomorrow by noon.

If you have any questions, please post them in the Forum - this is the primary contact point for the course!

First Lecture & Tutorial Preferences

Written on 13.10.25 (last change on 14.10.25) by Joachim Meyer

Welcome everybody!

We're glad you chose to hear Compiler Construction (CC) this year.

Tomorrow, Oct 14, we're kicking the lecture off at 08:30 in lecture hall 003 (E 1.3).
We will review the course's organization, including the two points below, and then dive into the topic.

If you… Read more

Welcome everybody!

We're glad you chose to hear Compiler Construction (CC) this year.

Tomorrow, Oct 14, we're kicking the lecture off at 08:30 in lecture hall 003 (E 1.3).
We will review the course's organization, including the two points below, and then dive into the topic.

If you registered early, you might not have been able to select a tutorial preference yet. Please select your tutorial preference until Sunday, 19 Oct.
If you are not yet registered for the course, but want to attend, please register until Sunday as well.

Finally, to register for the project: please follow the steps at How to Attend.

See you in class!

Show all

Compiler Construction

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.

 

Syllabus

  • Lexing and Parsing (LL, LR)
  • Semantic Analysis, Type Checking
  • Foundations of Program Analysis by Abstract Interpretation
  • Program Optimizations and their Analyses
  • SSA
  • LLVM
  • Instruction Selection
  • Scheduling
  • Register Allocation
  • Polyhedral Compilation
  • DSLs

 

Lecture Dates

  • The lectures will be recorded and made available online.
  • Time and Place: Tuesdays: 8:30, Thursdays: 12:15, E1.3 HS003
  • First Lecture: Tuesday, 14.10., 8:30, E1.3 HS003

 

Modus Operandi

There will be voluntary exercise sheets that are discussed in tutorials.

To get a course certificate, students must pass the final exam and the projects. If you pass both, the exam and the projects, 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 projects are to be implemented in C++. The first individually, the second in groups of 2-3 students. The grade will depend on how many tests your projects pass, how much the individual students contributed to the project, and the demonstrated understanding of the project in the oral presentation. 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.

Privacy Policy | Legal Notice
If you encounter technical problems, please contact the administrators.