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 ISAT/CS 236. 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 |
August | ||||||
---|---|---|---|---|---|---|
Su | M | Tu | W | Th | F | Sa |
27 | 28
Course intro |
29
Reading: Decaf Reading: EAC 1.1-1.4 |
30
Decaf programming activity 3n+1 Problem (3np1.decaf) Tower Problem (tower.decaf) |
31 | ||
September | ||||||
Su | M | Tu | W | Th | F | Sa |
1
Code review activity 3np1 code review due |
2 | |||||
3 | 4
Regular expressions and finite automata |
5
Reading: EAC 2.1-2.3 Deadline to drop without 'W' |
6
Review CS Senior Night (5pm) |
7 | 8
Regex activity MiniLexer.java PA1 due |
9 |
10 | 11
NFA/DFA conversions and lexers |
12
Reading: EAC 2.4-2.5, 2.6.1 |
13
Review |
14 | 15
FA conversion activity PA 1 code review due |
16 |
17 | 18
Context-free grammars |
19
Reading: EAC 3.1-3.2, 3.5.2 CISE career fair (ISAT/CS atrium and basement EnGeo) |
20
Review |
21 | 22
Grammar activity PA2 due |
23 |
24 | 25
LL parsing |
26
Reading: EAC 3.3, 3.5.3, 5.2.1 |
27
LL(1) activity ExprParser.java |
28 | 29
Midterm 1 PA 2 code review due |
30 |
October | ||||||
Su | M | Tu | W | Th | F | Sa |
1 | 2
LR parsing |
3
Reading: EAC 3.4, 5.2.1 |
4
Review |
5 | 6
LR/SLR activity |
7 |
8 | 9
Type systems and the visitor pattern |
10
Reading: Type system intro Reading: Visitor pattern excerpt (Canvas) |
11
Review |
12 | 13
Visitors activity PA3 due |
14 |
15 | 16
Static analysis |
17
Reading: EAC 4.1-4.3, 4.5.1, 5.2, 5.5 |
18
Symbol tables activity (symtab.decaf) |
19 | 20
NO CLASS PA 3 code review due |
21 |
22 | 23
Code generation |
24
Reading: EAC 4.4, 5.3-5.4, 7.1-7.8 |
25
Review |
26
Deadline to withdraw with 'W' |
27
ILOC code activity PA4 due |
28 |
29 | 30
Runtime environments |
31
Reading: EAC 6, 7.9 |
||||
November | ||||||
Su | M | Tu | W | Th | F | Sa |
1
Code generation activity |
2 | 3
Midterm 2 PA 4 code review due |
4 | |||
5 | 6
Dataflow analysis |
7
Reading: EAC 5.2.2, 5.3.4, 8.6.1, 9.1-9.2 |
8
Review |
9 | 10
Dataflow activity |
11 |
12 |
13-16
Instructor out of town Self-study unit: general optimization topics Reading: EAC 8 |
17
PA5 due |
18 | |||
19 |
20-24
Thanksgiving Break |
25 | ||||
26 | 27
Register allocation |
28
Reading: EAC 13 |
29
Review |
30 | ||
December | ||||||
Su | M | Tu | W | Th | F | Sa |
1
Register allocation activity PA5 code review due |
2 | |||||
3 | 4
Instruction scheduling |
5
Reading: EAC 12 |
6
Scheduling activity |
7 | 8
Final exam review Topics: (MM | PDF) PA6 due |
9 |
10 | 11 | 12 | 13 | 14 | 15
Final Exam (10:30am-12:30pm) |
16 |