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 King Hall 140. 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.
Slide links may be inactive until shortly after class. If they are still inaccessible by 7pm the evening after the lecture, please feel free to send me a reminder via email or Discord to post them.
The following diagram shows the outline of a typical week in this class:
Monday | Tuesday | Wednesday | Thursday | Friday | |
---|---|---|---|---|---|
In-class | Recap & mini-lecture topic intro | Discussion and problem solving | Group work lab | ||
Out-of-class | Initial reading & quiz | Detailed reading | |||
Project work | Project work | Project work | Project work | Project work |
August | ||||||
---|---|---|---|---|---|---|
Su | M | Tu | W | Th | F | Sa |
20 | 21
|
22 | 23
Introduction |
24
QUIZ: EAC 1.1-1.4 |
25
Lab |
26 |
27 | 28
Regular Expressions and Finite Automata |
29
QUIZ: EAC 2.1-2.3 |
30
Discussion |
31 | ||
September | ||||||
Su | M | Tu | W | Th | F | Sa |
1
Lab P0 due |
2 | |||||
3 | 4
Automata Conversions and Lexing |
5
QUIZ: EAC 2.4-2.5, 2.6.1 |
6
Discussion |
7 | 8
Lab P0 code reviews due |
9 |
10 | 11
Grammars |
12
QUIZ: EAC 3.1-3.2, 3.5.2 |
13
Discussion |
14 | 15
Lab P1 due |
16 |
17 | 18
LL parsing |
19
QUIZ: EAC 3.3, 3.5.3, 5.2.1 |
20
Discussion |
21 | 22
Lab P1 code reviews due |
23 |
24 | 25
LR parsing |
26
QUIZ: Dragon Book 4.5 (on Canvas), 4.6 and EAC 5.2.1 |
27
Discussion |
28 | 29
Lab P2 milestone due |
30 |
October | ||||||
Su | M | Tu | W | Th | F | Sa |
1 | 2
Type systems and the visitor pattern |
3
QUIZ: Type system intro and visitor pattern excerpt (on Canvas) |
4
Discussion |
5 | 6
Lab P2 due |
7 |
8 | 9
Static analysis |
10
QUIZ: EAC 4.1-4.3, 4.5.1, 5.2, 5.5 |
11
Discussion/Lab |
12 | 13
Lab (cont'd) P2 code reviews due |
14 |
15 | 16
Midterm |
17 | 18-20
Fall Break |
21 | ||
22 | 23
Code generation |
24
QUIZ: EAC 4.4, 5.3-5.4, 7.1-7.8 |
25
Discussion Deadline to drop without 'W' |
26 | 27
Lab P3 due |
28 |
29 | 30
Runtime environments |
31
QUIZ: EAC 6, 7.9 |
||||
November | ||||||
Su | M | Tu | W | Th | F | Sa |
1
Lab |
2 | 3
Lab (cont'd) P3 code reviews due |
4 | |||
5 | 6
Dataflow analysis |
7
QUIZ: EAC 5.2.2, 5.3.4, 8.6.1, 9.1-9.2, 9.3.6 |
8
Discussion |
9 | 10
Lab P4 milestone due |
11 |
12 |
13-16
Instructor out of town Self-study unit: general optimization topics (slides) Reading: EAC 8 |
17
Instructor out of town P4 due |
18 | |||
19 |
20-24
Thanksgiving Break |
25 | ||||
26 | 27
Register allocation |
28
QUIZ: EAC 13 |
29
P5 jumpstart |
30 | ||
December | ||||||
Su | M | Tu | W | Th | F | Sa |
1
Lab P4 code reviews due |
2 | |||||
3 | 4
List scheduling |
5
QUIZ: EAC 12 |
6
Lab |
7 | 8
Final exam review P5 due |
9 |
10 | 11 | 12 | 13
Final Exam (10:30am-12:30pm) |
14 | 15 | 16 |