Schedule

Home Details Schedule

The course schedule is always open to change and revision.  The course will have weekly assignments, due at the beginning of class on Tuesdays. 

The majority of the lecture notes come from Professor David August, with only minor modifications by myself.  I really appreciate David's help making this a better course.

Week Topics Notes Assignments: Due Date
1 (Feb 2) Intro; ML Intro; Intro2

using SML/NJ;

online ML tutorial

A1:  Feb 12
2 (Feb 9) Lexical Analysis;

Appel Chap 2

lexing; parsing intro A2:  Feb 19
3 (Feb 16) Parsing;

Appel Chap 3

LR; MLYacc A3:  Feb 26
4 (Feb 23) Parsing

Appel Chap 3

LL; error A4:  Mar 4
5 (March 1) Abstract Syntax; Semantic Analysis

Appel Chap 4

absyn;symbol study for midterm; Chpt 1-4 in Appel
6 (March 8) Type Checking;

Appel Chap 5

Midterm Mar. 11

   
Break (March 15) Bliss    
7 (March 22) Activation Records; IR

Appel Chap 6,7,8

AR; Translation A5: Mar 30
8 (March 29) Instruction Selection; Optimization

Appel Chap 9, 18.1

instructSelect; controlflow A6: Apr 6
9 (April 5) Data flow analysis

Appel Chap 17.1,17.2,17.3

dataflow1;dataflow2 A7: Apr 15
10 (April 12) Alias Analysis; Loop optimizations; Register Allocation

Appel Chap 17.5, 11

(no online notes for alias analysis); induction variables; regalloc;  
11 (April 19) SSA; Garbage Collection

Appel pp.427-432, 445-447; 13.1-13.4

SSA; GC (copying) A8: April 29
12 (April 26) GC; Objects GC (mark-sweep); objects  
-- Everything   Final Exam:  Computer Science Building 102

May 13 at 1:30 PM

Back to Top