====== Compiler Construction 2009 ====== This is an **archival** version of the course. **Next edition: [[:cc11:top|Compiler Construction 2011]]** ===== Course Material for 2009 ==== [[Course Information]] Week 01, Sep 14: * [[Lecture 01|Lecture 01: Compiler Phases. Describing Languages]] (Monday 10:15) * [[Labs 01]] (Wednesday 8:15) * [[Lecture 02|Lecture 02: Lexical Analysis]] (Wednesday 10:15) Week 02, Sep 21: * [[http://sac.epfl.ch/page19672.html#11|Monday is a holiday]] * [[Labs 02]] (Wednesday 8:15) * [[Exercises 01]] (Wednesday 10:15) * [[Homework 01]] (due Wednesday in a week at 10:00am) Week 03, Sep 28: * [[Lecture 03|Lecture 03: Top-Down Parsing]] (Monday 10:15) * [[Labs 03]] (Wednesday 08:15) * [[Exercises 02]] (Wednesday 10:15) * [[Homework 02]] (due Wednesday October 7th at 10:00am) Week 04, Oct 5: * [[Lecture 04|Lecture 04: Semantic Actions. Parsing General Context-Free Grammars]] (Monday 10:15) * [[Labs 04]] (Wednesday 08:15) * [[Exercises 03]] * [[Homework 03]] Week 05, Oct 12: * [[Lecture 05|Lecture 05: LR Parsing]] (Monday 10:15) * [[Labs 05]] (Wednesday 08:15) * [[Exercises 04]] * [[Homework 04]] Week 06, Oct 19: * [[Lecture 06|Lecture 06: Semantic Analysis Intro]] (Monday 10:15) * [[Labs 06]] (Wednesday 08:15) * [[Exercises 05]] * [[Homework 05]] Week 07, Oct 26: * [[Lecture 07|Lecture 07: Types and Soundness for Lambda Calculus]] (Monday 10:15) * [[Labs 07]] (Wednesday 08:15) * [[Homework 06]] Week 08, Nov 2: * [[Lecture 08|Lecture 08: Advanced Types. Introduction to Code Generation]], Monday 10:15, INM 202 * [[Lecture 09|Lecture 09: Code Generation]], Wednesday 08:15-09:45, INM 202 * [[Labs 08]], Wednesday, 10:00-12:00, INF3 * [[Homework 07]] Week 09, Nov 9: * [[Lecture 10|Lecture 10: More Code Generation]] * [[Exercises 08]] * [[Labs 09]], Wednesday, 10:00-12:00, INF3 Week 10, Nov 16: * [[Lecture 11|Lecture 11: Data-Flow Analysis]] * [[Labs 10|Labs: Personal projects]] * [[Homework 08|Homework 08]] Week 11, Nov 23 * [[Lecture 12|Lecture 12: Data-Flow Analysis Correctness, Initialization, Live Vars]] * [[Lecture 13|Lecture 13: Compiling to Register Machines]] * Labs: work on final part of your compiler Week 12, Nov 30 * [[Lecture 14|Lecture 14: Advanced Procedures, Heap, SSA, Instruction Selection]] * Wednesday: 08:00-12:00 labs Week 13, Dec 7 * Monday Dec 4, 10:15: Review of Quiz * Wednesday: 8:00-12:00 review your compiler so far with teaching assistants Week 14, Dec 14 * Monday, Dec 14: [[Lecture 15]] * Wednesday, 8:00-12:00 **End-of-Term Quiz** Deadlines (see also [[http://sac.epfl.ch/page19672.html#6|EPFL Academic Calendar]]): * Saturday, January 9, 2010: Project Submission ([[final-report|Report]] and [[labs 10|Code]]) * project presentations: to be determined Previous edition: [[:compilation:top|Compiler Construction 2008]]