|
Class |
Week |
Date |
Day |
Topic |
Reading |
Assignment |
|
1 |
1 |
J16 |
W |
Introduction (H1 out) |
|
|
|
2 |
2 |
J21 |
M |
Basics and lexing (P1 out) |
1 (skim), 2-2.2.2 |
|
|
3 |
|
J23 |
W |
Top-down parsing |
2.2.3;2.2.5 |
|
|
4 |
3 |
J28 |
M |
Bottom-up parsing |
2.2.6 (skip *) |
|
|
5 |
|
J30 |
W |
Syntax theory and names |
2.3; 3-3.2 |
|
|
6 |
4 |
F04 |
M |
Scope and binding (P2 out) |
3.3-3.4 |
|
|
7 |
|
F06 |
W |
Overloading (H2 out) |
3.5-3.6 (skip *) |
|
|
8 |
5 |
F11 |
M |
Semantic analysis |
4-4.4 |
|
|
9 |
|
F13 |
W |
Type checking (H3 out) |
7-7.2.4 (skim 7.1) |
|
|
10 |
6 |
F18 |
M |
Records, arrays, strings, sets |
7.3-7.6 (skip *) |
|
|
11 |
|
F20 |
W |
Pointers and lists |
7.7-7.8 |
|
|
12 |
7 |
F25 |
M |
Control flow: exprs (P3 out) |
6-6.4 |
|
|
13 |
|
F27 |
W |
Control flow: loops, recursion |
6.5-6.6 |
|
|
14 |
8 |
M04 |
M |
Slack or review |
|
|
|
15 |
|
M06 |
W |
Mid term |
Chapters 1-4, 6, 7 |
|
|
16 |
9 |
M18 |
M |
Subroutines |
8-8.2.2 |
|
|
17 |
|
M20 |
W |
Parameter passing |
8.3-8.4 (skip *) |
H3: Proposal (F) |
|
18 |
10 |
M25 |
M |
Exceptions and coroutines (H4 out) |
8.5-8.6.3 |
|
|
19 |
|
M27 |
W |
Runtime |
9-9.6 (skip *) |
|
|
20 |
11 |
A03 |
W |
Data abstraction |
10-10.2 |
|
|
21 |
12 |
A08 |
M |
Data abstraction |
10.3-10.4 |
|
|
22 |
|
A10 |
W |
Data abstraction |
10.6 |
|
|
23 |
13 |
A15 |
M |
Alternative models |
11-11.2 (skip *) |
|
|
24 |
|
A17 |
W |
Alternative models |
11.3-11.4 (skip *) |
|
|
25 |
14 |
A22 |
M |
Code improvement |
13-13.2;13.8 |
|
|
26 |
|
A24 |
W |
Slack |
|
|
|
27 |
15 |
A29 |
M |
Presentations (all week) |
|
|
|
28 |
|
M01 |
W |
Presentations (all week) |
|
|
|
|
16 |
M06 |
M |
Final |
Everything |
|