Date
|
Topic
|
Readings
|
Lab
|
Assignment due
|
Other
|
M |
Apr 6 |
Intro to PL, intro to Racket |
|
|
|
|
W |
8 |
intro, design recipe intro, structs 1, structs 2 |
PLAI Chs. 1,2
|
|
|
|
F |
10 |
QUIZ, Lists in Racket & Typed Racket |
|
Lab 1
|
|
|
M |
13 |
intro, lists 2, lists 3, list functions, quote |
PLAI Ch. 3
|
|
|
|
W |
15 |
QUIZ, interp and parse for a little language |
|
|
|
|
Th |
16 |
|
|
|
Assignment 1 due
|
|
F |
17 |
interp and parse for a string language, desugaring |
PLAI Ch. 4
|
Lab 2
|
|
|
M |
20 |
Variables, Function calls, scoping |
PLAI Ch. 5
|
|
|
|
W |
22 |
QUIZ, Map, Filter, Fold, For |
|
|
|
|
F |
24 |
Environments, Scope |
PLAI Ch. 6
|
Lab 3
|
|
|
M |
27 |
Higher-order Functions |
PLAI Ch.7
|
|
|
|
W |
29 |
QUIZ, Closures |
|
|
Assignment 2 due
|
|
F |
May 1 |
Desugaring of 'vars' |
|
Lab 4
|
|
|
M |
4 |
sim-AQSE3, recursion using self-reference |
|
|
|
|
W |
6 |
QUIZ, Exercises using sim-AQSE3 |
|
|
|
|
F |
8 |
Exercises using vars |
|
Lab 5
|
|
|
M |
11 |
Questions about Environments |
PLAI Ch. 10 |
|
|
|
W |
13 |
MIDTERM |
|
|
|
|
F |
15 |
State and Mutation I |
|
|
Assignment 3 due
|
|
M |
18 |
State and Mutation II |
PLAI Ch. 8-8.1.5 |
|
|
|
W |
20 |
Type Checking I |
|
|
|
|
F |
22 |
Type Checking II, simply-typed lambda calculus |
PLAI Ch. 15-15.2.3 |
Lab 6
|
|
|
M |
25 |
Memorial Day? |
|
|
|
|
W |
27 |
Types Checking III |
|
|
|
|
F |
29 |
Proofs of correctness, Memory Management |
|
|
Assignment 4 due
|
|
M |
Jun 1 |
TBA |
|
|
|
|
W |
3 |
Course Review |
|
|
|
|
F |
5 |
Team Presentations |
|
|
Assignment 5 due
|
|