Bachelor Course on Languages and Compilers

Welcome to the homepage of Languages and Compilers.

IMPORTANT NEWS: We have made an investigation of the content of this course and the course Formele en Natuurlijke Talen (KI1V13004) taught at Geesteswetenschappen. Because of the large overlap between the courses, the exam committee has decided that any information science and computer science programme in the bachelor can feature at most one of these two courses.

This year the course is taught by two people: Jurriaan Hage and David van Balen. Jurriaan Hage will leave the university halfway the course, and then David takes over completely. This has implications for how to contact the teacher(s) of this course.

If you have a question about a specific lab grade, please contact David van Balen. For other general enquiries about the course contact Jurriaan Hage (but put David in the CC) until January 1st, and please contact David van Balen after January 1st, 2022. General announcements about the course will be made via e-mail from Blackboard.

This course deals with finite state automata, parsing and simple code generation. More details on the contents of this course can be found in Osiris. This includes a list of topics, and also retake information and the grading scheme.

The main gist of the grading scheme is that if your midterm grade is lower than your final grade, then your final grade counts. If it is higher, then a weighted average is taken. In other words, it is always a good idea to take part in the midterm. The midterm is a digital exam with mostly multiple choice questions about approximately half of the material. The final is a written exam about all the material.

The practical assignments are in Haskell, and we expect students to be familiar with that language (for example, by doing our bachelor course on Functional Programming).