This page provides the PowerPoint slides, handouts, and assignments used in the Master's course on Compiler Construction at the computer science department of Delft University of Technology. The course consists of 14 lectures, which cover most of the material presented in the Modern Compiler Design book, two practical assignments, which involve modifying and extending a reference compiler, and a final exam. In total the students are expected to put in 160 hours of work (lectures = 40, assignments = 80, exam = 40). The basic philosophy behind the course is that 'practice makes perfect', and students are encouraged to "play" with the material. For example, each 2 hour lecture contains many questions and some exercises to be completed (and evaluated) in the classroom.
The schedule for last year's course (2002):
lecture | chapter | topic | slides | handout |
1 | 1 - 2.1.5 | introduction + lexical analysis by hand | ppt | |
2 | 2.1.6 - 2.1.13 | automatic lexical analysis (lex) | ppt | |
3 | 2.2 - 2.2.4 | top-down parsing (LLgen) | ppt | |
4 | 2.2.5 | bottom-up parsing (yacc) | ppt | |
5 | 6.1 | semantic analysis (type checking) + assignment | ppt | |
6 | 3.1 | AST processing, attribute grammars | ppt | |
7 | 3.2 | AST processing, manual methods | ppt | |
8 | 4 - 4.2.4 | code generation | ppt | |
9 | 4.2.5 - 4.4 | code generation | ppt | |
10 | 6.2 - 6.3 | context handling, types and activation records | ppt | |
11 | 6.4 - 6.5 | context handling, control flow and modules | ppt | |
12 | 5 | memory management | ppt | |
13 | 7 | functional programs | ppt | |
14 | 8 | logic programming | ppt | |
1-14 | 1-8 | everything in zip format | ppt |
The assignments (including the reference compiler) can be found here. Please contact Koen Langendoen directly for obtaining the set of test programs used to mark the practical work.