Date
|
Topic
|
Readings
|
Lab
|
Assignment due
|
Other
|
M |
Mar 29 |
Intro to PL, intro to Racket |
|
|
|
|
W |
31 |
Cesar Chavez Day |
|
|
|
|
F |
Apr 2 |
QUIZ, intro, design recipe intro, structs 1, structs 2, Lists in Racket & Typed Racket |
PLAI Chs. 1,2
|
Lab 1
|
|
|
M |
5 |
intro, lists 2, lists 3, list functions, quote |
PLAI Ch. 3
|
|
A1 (Essay) due
|
|
W |
7 |
QUIZ, quote, lists |
|
|
|
|
Th |
8 |
|
|
|
A2 (Warmup) due
|
|
F |
9 |
desugaring, match patterns, parsing |
PLAI Ch. 4
|
Lab 2
|
|
|
M |
12 |
Variables, Function calls, scoping |
PLAI Ch. 5
|
|
|
|
W |
14 |
QUIZ, Map, Filter, Fold, For |
|
|
|
|
F |
16 |
Environments, Scope |
PLAI Ch. 6
|
Lab 3
|
|
|
M |
19 |
Higher-order Functions |
PLAI Ch.7
|
|
A3 (GIYA3) due
|
|
W |
21 |
QUIZ, Closures |
|
|
|
|
F |
23 |
sim-GIYA4, recursion using self-reference |
|
Lab 4
|
A4 (GIYA4) due
|
|
M |
26 |
Exercises using sim-GIYA4 |
|
|
|
|
W |
28 |
QUIZ, TBA |
|
|
|
|
F |
30 |
Exercises using vars |
|
Lab 5
|
|
|
M |
May 3 |
State and Mutation I |
PLAI Ch. 8-8.1.5 |
|
A5 (GIYA5) due
|
|
W |
5 |
Midterm |
|
|
|
|
F |
7 |
State and Mutation II |
|
|
|
|
M |
10 |
Store-Passing Style |
|
|
|
|
T |
11 |
|
|
|
A6 (English Text) due
|
|
W |
12 |
Recursion |
PLAI Ch. 8 |
|
|
|
F |
14 |
TBA |
PLAI Ch. 9 |
Lab 6
|
|
|
M |
17 |
Type Checking I |
PLAI Ch. 15-15.2.3 |
|
|
|
T |
18 |
|
|
|
A7 (GIYA7) due
|
|
W |
19 |
Type Checking II, simply-typed lambda calculus |
|
|
|
|
F |
21 |
Type Checking III |
|
|
|
|
M |
24 |
Type Checking IV |
|
|
|
|
W |
26 |
QUIZ, Memory Management I |
PLAI Ch. 11 |
|
|
|
F |
28 |
Memory Management II |
|
|
A8 (GIYA) due
|
|
M |
31 |
No Class |
|
|
|
|
W |
Jun 2 |
TBA |
|
Lab 7
|
|
|
F |
4 |
final presentations |
|
|
A9 due
|
|