As stated by the curriculum, your task is to build a simple compiler for a small procedural programming language.
It's quite hard to fit this goal into the 5 ECTS budget of this module (lecture included), nevertheless I think I found the right trade-offs with the given specification.
Still, it is highly recommended to work in teams and that you start early - always trying to be ahead of schedule.
By now, this course is notorious for requiring a lot of effort.
The legends are true; I am indeed expecting a decent level of skill from all of you.
This is a master's course after all.
While I don't care whether you have officially finished your bachelor, you should only take this course if you are certain that you meet the prerequisites.
Otherwise, skip it for now and come back to it when you have acquired the necessary knowledge.
Since this course is very programming intensive, you need to be fluent in one of these languages.
If choose C and think strings are compared using `==` you'll have a very hard time.
For OS, if you think calling `exec` without `fork` while implementing a library is a good idea, maybe revisit the corresponding lecture would be a good idea.