The following is approaximate a week-by-week schedule for the course Compiler Design (BU CAS CS 525), Spring 2005: ------ Week 1 19 Jan, 05 W: Introduction, Mathematical Induction 21 Jan, 05 F: Structural Induction, Finite Automata ------ Week 2 24 Jan, 05 M: Class cancelled due to blizzard 26 Jan, 05 W: DFA and regular operations 28 Jan, 05 F: NFA and regular expressions; pumping lemma ------ Week 3 31 Jan, 05 M: Lexical Analysis; Introduction to CFG 02 Feb, 05 W: CFG; Parse Trees; Ambiguity 04 Feb, 05 F: Recursive Decent Parsers; LL(k) Grammars / Parsers ------ Week 4 07 Feb, 05 M: LL(k) Parsers; left recursion elimination; error recovery 09 Feb, 05 W: LR(k) Grammars; LR(0) Parsing 11 Feb, 05 F: LR(0) Parsing, SLR Parsing, ------ Week 5 14 Feb, 05 M: LR(1) Parsing, LALR Parsing 16 Feb, 05 W: Abstract Syntax Tree 18 Feb, 05 F: Visitor Pattern ------ Week 6 22 Feb, 05 T: A simple type system (I) 23 Feb, 05 W: A simple type system (II) 25 Feb, 05 F: Class Canceled (NEPLS) ------ Week 7 28 Feb, 05 M: Hash tables; environments 02 Mar, 05 W: Activation records; stack frame 04 Mar, 05 F: Static links; view shift ------ Spring Recess ------ Week 8 14 Mar, 05 M: Intermediate Representation (I) 16 Mar, 05 W: Intermediate Representation (II) 18 Mar, 05 F: Midterm Exam ------ Week 9 21 Mar, 05 M: Intermediate Representation (III) 23 Mar, 05 W: Canonica Form, Blocks and Traces 25 Mar, 05 F: Instruction Selection ------ Week 10 28 Mar, 05 M: Instruction Selection 30 Mar, 05 W: Liveness Analysis 01 Apr, 05 F: Liveness Analysis ------ Week 11 04 Apr, 05 M: Register Allocation 06 Apr, 05 W: Register Allocation (spilling) 08 Apr, 05 F: Register Allocation (for trees) ------ Week 12 11 Apr, 05 M: Putting it together 13 Apr, 05 W: Garbage Collection 15 Apr, 05 F: Garbage Collection ------ Week 13 18 Apr, 05 M: Holiday 20 Apr, 05 W: Class Canceled 22 Apr, 05 F: Class Canceled ------ Week 14 25 Apr, 05 M: Garbage Collection 27 Apr, 05 W: Closure Conversion 29 Apr, 05 W: Individual Meetings ------ Week 15 02 May, 05 M: Group Demo (Gabe, ...) 04 May, 05 W: Group Demo ------ Final exam is on Monday, May 16, 2005, from 9 to 11AM