Calendar
This calendar is tentative and subject to change. Please check this page regularly for updates.
Unless explicitly marked, all class periods will be held in HHS 1210. Unless noted otherwise, all readings are from the class textbook. Unless noted otherwise, all quizzes will be on Canvas, and all homeworks (HWs) and programming assignments (PAs) will be posted on the assignments page.
The following diagram shows the outline of a typical week in this class:
Monday | Tuesday | Wednesday | Thursday | Friday | |
---|---|---|---|---|---|
In-class | Recap & new topic intro | Mini-lecture and discussion | In-class activity | ||
Out-of-class | Initial reading & quiz | Detailed reading | |||
Project work | Project work | Project work | Project work | Project work |
Here is the detailed per-week course schedule:
August | ||||||
---|---|---|---|---|---|---|
Su | M | Tu | W | Th | F | Sa |
30 | 31
Course intro |
|||||
September | ||||||
Su | M | Tu | W | Th | F | Sa |
1
Reading: Decaf Reading: EAC 1.1-1.4 |
2
Decaf programming activity 3n+1 Problem |
3 | 4
Code review activity |
5 | ||
6 | 7
Regular expressions and finite automata |
8
Reading: EAC 2.1-2.3 Deadline to drop class CS Senior Night (5pm-6:30pm) |
9
Review |
10 | 11
Regex activity MiniLexer.java PA1 due |
12 |
13 | 14
NFA/DFA conversions and lexers |
15
Reading: EAC 2.4-2.5 |
16
Review |
17 | 18
FA conversion activities PA 1 code review due |
19 |
20 | 21
Context-free grammars CS Career Fair (10am-3pm, ISAT/CS 259) Tech talk: "Fuzzy Logic" (5pm, ISAT/CS 259) |
22
Reading: EAC 3.1-3.2, 3.5.2 |
23
Review |
24 | 25
Grammar activity PA2 due |
26 |
27 | 28
LL(1) parsing |
29
Reading: EAC 3.3, 3.5.3, 5.2.1 |
30
LL(1) activity ExprParser.java Midterm review session (ISAT 246, 2:45pm) |
|||
October | ||||||
Su | M | Tu | W | Th | F | Sa |
1 | 2
Midterm 1 PA 2 code review due |
3 | ||||
4 | 5
Bottom-up parsing PA3/ASTs |
6
Reading: EAC 3.4, 5.2.1 |
7
Review SLR example |
8 | 9
LR(0)/SLR parsing activity |
10 |
11 | 12
Visitor Pattern |
13
Reading: Visitor pattern excerpt |
14
Review UUG Vim Tutorial (7:30pm in HHS 2207) |
15 | 16
Visitor pattern activity PA3 due |
17 |
18 | 19
Static analysis |
20
Reading: EAC 4.1-4.3, 4.5.1, 5.2, 5.5 |
21
Review |
22 | 23
Symbol tables activity symtable_ex1.decaf symtable_ex2.decaf PA3 code review due |
24 |
25 | 26
Code generation |
27
Reading: EAC 4.4, 5.3-5.4, 7.1-7.8 |
28
Review |
29
Deadline to withdraw with "W" |
30
ILOC code activity Reference PA4 due |
31 |
November | ||||||
Su | M | Tu | W | Th | F | Sa |
1 | 2
Runtime environments |
3
Reading: EAC 6, 7.9 |
4
Review UUG Go Tutorial (7:30pm in ISAT 243) |
5 | 6
Code generation activity MyILOCGenerator.java PA4 code review due |
7 |
8 | 9
Dataflow analysis |
10
Reading: EAC 5.2.2, 5.3.4, 8.6.1, 9.1-9.2 |
11
Review |
12 | 13
Midterm 2 |
14 |
15 |
16-20
Instructor out of town Self-study unit: general optimization topics Reading: EAC 8 |
20
PA5 due |
21 | |||
22 |
23-27
Thanksgiving Break |
28 | ||||
29 | 30
Register allocation |
|||||
December | ||||||
Su | M | Tu | W | Th | F | Sa |
1
Reading: EAC 13 |
2
Review |
3 | 4
Register allocation activity PA5 code review due |
5 | ||
6 | 7
Instruction scheduling |
8
Reading: EAC 12 |
9
Misc. topics |
10 | 11
Final exam review (MM | PDF) PA6 due |
12 |
13 |
14-18
Final Exam Fri 10:30-12:30 (10:30am-12:30pm) |