
| Lectures | Contents | Slides | Reading instructions |
|---|---|---|---|
| F1 | Introduction | F01.pdf F01-SOL.pdf | Appel, Ch 1. |
| F2 | Scanning and regular expressions. | F02.pdf F02-SOL.pdf | Appel, Ch 2. |
| F3 | Context-free grammars and parsing. | F03.pdf ANT.pdf | Appel, Ch 3-3.1 |
| F4 | LL Parsing. | F04.pdf F04-SOL.pdf | Appel, Ch 3.2 |
| F5 | More LL parsing. Abstract syntax trees. | F05.pdf | Appel, Ch 3.2, 4 |
| F6 |
AST computations, AOP. The visitor pattern. The interpreter pattern. |
F06.pdf F06-SOL.pdf | Appel, Ch 5 R. Martin: Agile Software Development (for design patterns) |
| F7 |
LR parsing. Fixed point equations. |
F07.pdf | lr.pdf Appel, Ch 4 |
| F8 | Name and type analysis. (Emma Söderberg) | F08.pdf | Appel, Ch 5-5.1 (except the subsection on FUNCTIONAL SYMBOL TABLES) |
| F9 | Attribute grammars. | F09.pdf | seal-example.zip |
| F10 | Run-time systems for procedural and OO languages. | F10.pdf |
Appel: Ch 6-6.1 on procedural run-time systems. Focus on
the following subsections; Introduction, STACK FRAMES, THE
FRAME POINTER, REGISTERS, STATIC LINKS. - Skim through the following subsections: HIGHER-ORDER FUNCTIONS, PARAMETER PASSING, RETURN ADDRESSES. Skip the following subsection: FRAME-RESIDENT VARIABLES Appel, Ch 14-14.2 on OO run-time systems. |
| F11 | Intermediate code generation. | F11a.pdf F11b.pdf | Appel, Ch 7 (only the Introduction, skip 7.1 and onwards) |
| F12 | Automatic memory management. Guest lecturer: Roger Henriksson. | F12.pdf | Appel, Ch 13 (just the concepts, no algorithmic |
| F13 |
Introduction to optimizing compilers. Guest
lecturer: Jonas Skeppstedt |
F13.pdf |
If you take the course Datorarkitektur or if you have
taken the course Optimerande Kompilatorer, you may skip part
A of this lecture (unless you would like a repetition). Appel: - The section on BASIC BLOCKS in Ch 8.2 - The introduction to Ch 10 (not 10.1 or onwards) - The introduction to Ch 11 (not 11.1 or onwards) |
| F14 | Assembly code generation. About the project. About the exam. | F14.pdf Problems and solutions from the 2007-03-06 exam. |
Andersson, Using the GNU assembler for Intel processors. intel.pdf |
Page Manager: Lennart Andersson
Webmaster: webmaster@lth.se
Last updated: 2012-05-14