Fall 2003 Course Schedule

This schedule is approximate, and may be revised at any time.
Relevant chapters from the text are noted in parentheses.
Week beginning
Lectures
Project
Homework
P/S/O
August 25
Introduction (1) 0. Interpreter (1) Setting up your account
September
1
Lexical analysis (2)
1. Scanner (2) JavaCC
8
Lexical analysis (2)
2. Parser (3,4) MiniJava scanning
15
Parsing (3)
MiniJava syntax
22
Parsing (3)
MiniJava trees
29
Abstract syntax (4) 3. Semantics (5)
October 6
Semantic analysis (5)

1. Midterm Review
MiniJava type-checking
13
No class Tuesday (October Break)
No PSOs Tuesday (October Break)
MIDTERM: Oct 15, 7-9PM, WTHR 200
Activation records (6)


20
Translation to intermediate code (7)
MIPS frames
27
Basic blocks and traces (8) 4. Translation (7)
November 3
Instruction selection (9)
Intermediate code
10
Liveness analysis (10)

17
Register allocation (11)
5. Instruction selection (9)
MIPS instructions
24
No class or PSO's Wednesday,
Thursday, or Friday (Break)
Putting it all together (12)

Instruction selection
December 1
Advanced topics

8
Course review
15
Exam week