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 
Higherorder Functions 
PLAI Ch.7




W 
29 
QUIZ, Closures 


Assignment 2 due


F 
May 1 
Desugaring of 'vars' 

Lab 4



M 
4 
simAQSE3, recursion using selfreference 




W 
6 
QUIZ, Exercises using simAQSE3 




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. 88.1.5 



W 
20 
Type Checking I 




F 
22 
Type Checking II, simplytyped lambda calculus 
PLAI Ch. 1515.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

