Main page Solutions and your handins 
Date Topic Videos PLAI Slides Programs & Notes In Class Homework 
M
Aug 18 
IntroductionIntroduction videos
Tutorial videos
§1slidesShplait tutorialc2f, dowHW 0
W
  20 
How to Design ProgramsHtDP videos slidesHtDProbotHW 1
M
  25 
InterpretersInterp videos§2-5slidesarith, parsedivide 
W
  27 
Functions and substitutionFunction videos§2-5slidesfunctionfunction_absHW 2
M
Sept 
Labor Day      
W
  
Binding and environmentsBinding videos§6slideslet, env, HtDP IVremove, let_q 
M
  
Functions as valuesLambda videos§7slideslambdaexample tracesHW 3
W
  10 
Mutable stateStore videos§8.1slidesbox, store, store_resletswap 
M
  15 
RecordsRecord videos slidesrecord, mutable_recordrecord2HW 4
W
  17 
VariablesVariable videos§8.2slidesvariable, crateplusplus, fluid_let 
M
  22 
EncodingsEncoding videos slidesjust_lambdalambda_bool_pairno HW
W
  24 
Midterm 1   practice midterm  
M
  29 
Encoding recursionY videos slidesjust_lambdalen, lambda_lenHW 5
W
Oct 
RecursionLetrec videos§9slidesletrec_mc, letrec, letrec_ubiletrec_multi 
M
  
Fall break      
W
  
Fall break      
M
  13 
Objects and Classes
videos only
Object videos
Class videos
§10slides
slides
object, lambda_obj
class, inherit, inherit_parse
object-fallback, 2, 3
class_abs, inh…, …parse…
 
W
  15 
Lazy evaluationLazy videos§17.1slideslazy, more_lazylazy_boxHW 6
M
  20 
ContinuationsContinuation videos slideslambda_klambda_pair_k, lambda_cps 
W
  22 
Errors, exceptions, call/ccControl videos§14slideserror, try, let_cctrace 1, 2, 3, 4, 5HW 7
M
  27 
review / trace practice      
W
  29 
Midterm 2   practice midterm  
M
Nov 
CompilationCompilation videos slides0, 1, 2, 3, 44_abs 
W
  
Garbage collectionGC videos§11slides55_absHW 8
M
  10 
TypesType videos§15.1-2slidestyped_lambdatyped_box 
W
  12 
SubtypingSubtyping videos§15.3.7slidestyped_record, subtype, subtype_mutsubtype_if0, subtype_if0genHW 10
M
  17 
Classes and type checkingTyped class videos slidestyped_class, typed_parseequal_class 
W
  18 
Type inferenceInference videos slidesinfer_lambdainfer_absHW 11
M
  24 
Typed recursionTyped recursion videos§15.2.3-4slidestyped_letrec, type_caseequals 
W
  26 
Parametric polymorphismPolymorphism videos§15.3.1slidespoly_lambdapoly_boxHW 12
M
Dec 
MacrosMacro videos§13slideslambda_matchless, let_macro  
W
  
Racket, Rhombus, & Shplait