Date Topic Readings/Notes Homework
M 29 intro to compilers, laying out our semester project Chap. 1, Lab 1
W 31 NO CLASS: Cesar Chavez' Birthday.
F 2 More about Footle Chap. 2
M 5 Scanning Chap. 3
W 7 ?? Parsing Sections 4.1,4.2
F 9 NO CLASS: Furlough I. Sections 5.1–5.5
M 12 Closures and Environments Assignment 1 due
W 14 Intro to LLVM Sections 5.6–5.8
F 16 More on LLVM, representing values
M 19 Code Generation for varrefs Chapter 6
W 21 creating new environment frames / the static pass, in more detail
F 23 NO CLASS: Furlough II
M 26 sample code walk, representing footle values Assignment 2 due
W 28 representing footle values in memory, generating LLVM
F 30 generating LLVM for scopes Lab 2
M 3 Metaprogramming: writing Java in Scheme Chapter 7
W 5 NO CLASS: Furlough II Assignment 3 due
F 7 representing and constructing Strings and Floats
M 10 Intro to Sparc assembly
W 12 SPARC assembly, SPARC registers
F 14 Basic Blocks, Register Allocation Milestone 1 due
M 17 Basic Blocks, Instruction Selection
W 19 Building the Interference Graph
F 21 All the way through with a trivial function. Milestone 2 due
M 24 a simple analysis: 0-CFA
W 26 TBA
F 28 TBA
M 31 0-CFA: return, objects
W 2 TBA
F 4 TBA