Final grades are now posted on Blackboard.
Notes on the Use of Java in This Course
Assignment I, handed out on 8/26 and due on 9/6
Assignment II, handed out on 9/9 and due on 9/20
Assignment III, handed out on 9/21 and due on 10/11
Test I (given on 10/05)
Assignment IV, handed out on 10/12 and due on 10/25
Assignment V, handed out on 10/26 and due on 11/15
Test II (given on 11/02)
Assignment VI, handed out on 11/16 and due on 12/04
Test III (given on 12/09)
Please use Blackboard to check your grades.
The Java Tutorials, particularly the Learning the Java Language tutorial
The Lex & YACC Page (including manuals for Flex and Bison)
Textbook webpage (including errata)
Jison, a tool for building parse tables by Zach Carter (an alumnus of this course)
Week | Dates | Topics | Reading |
---|---|---|---|
1 | 08/24, 08/26 | Introduction; Phases of compilation; DJ; DISM | 1.1-1.7 |
2 | 08/31, 09/02 | Lexical analysis | 2.1-2.3, 2.6 |
3 | 09/09 | Lexical analysis | 2.4 |
4 | 09/14, 09/16 | Syntactic analysis | 3.1-3.4, 5.1-5.2 |
5 | 09/21, 09/23 | Syntactic analysis | 4.3.1-4.3.2, 5.3-5.5 |
6 | 09/28, 09/30 | Syntactic analysis; Review | 4.1-4.2, 4.3.3 |
7 | 10/05, 10/07 | Test I; Abstract syntax trees | Class notes |
8 | 10/12, 10/14 | Abstract syntax trees; Semantic analysis | Class notes |
9 | 10/19, 10/21 | Semantic analysis | Class notes |
10 | 10/26, 10/28 | Code generation; Review | 7.1 |
11 | 11/02, 11/04 | Test II; Code generation | Class notes |
12 | 11/09 | Code generation | 7.3.1 |
13 | 11/16, 11/18 | Code generation; Garbage collection | 7.4 |
14 | 11/23 | Code optimizations | Class notes |
15 | 11/30, 12/02 | Code optimizations; Bootstrapping; Review | 8.9, Reflections on Trusting Trust |
Final | 12/09 | Final Exam, 5:30-7:30pm | All tests are cumulative |