Lecture Schedule
Date  Topic  Stub (before class)  Code (after class)  

Jan  15  Introduction RWH: Preface and Chapter 1 
Lec1:  
Jan  20  No class: MLK Day  
Jan  22  No class: Big Snow! RWH: Chapters 24 

Jan  27  Lists and recursion  Lec2: html lhs  html lhs 
Jan  29  Higherorder programming patterns
and userdefined datatypes 
Lec3: html
lhs Lec4: html lhs SecretCode: html lhs 
html
lhs html lhs html lhs 
Feb  3  Type classes RWH: 6 
Classes: html lhs  html lhs 
Feb  5  QuickCheck  html lhs  html lhs 
Feb  10  QuickCheck, part 2  html lhs  html lhs 
Feb  12  Monads, Part 1 RWH: 7 and 14 HW #2 Discussion 
Monads: html lhs  html lhs 
Feb  17  Monads, Part 2 
Monads2: html lhs
State: html lhs 
html lhs
html lhs 
Feb  19  Monads, Part 3  Monads3: html lhs RandomGen: html lhs 
html lhs html lhs hs 
Feb  24  Parsing RWH: 10 and 16 
Parsers: html lhs Xml: html lhs 
html lhs 
Feb  26  Monad Transformers RWH: 18 
Transformers: html lhs  html lhs 
Mar  3  Monad Transformers (cont.) 
Transformers: html lhs  
Mar  5  Monad Transformers (cont.) 
Transformers: html lhs 
html lhs 
Mar  17  FUN Interpreters 
FunSyntax:
html lhs FunEnv: html lhs 
html lhs html lhs 
Mar  19  ContinuationPassing FUN 
FunCont: html lhs

html lhs 
Mar  24  Concurrency Monad 
Concurrency: html lhs Client: hs 
html lhs 
Mar  26  Concurrency (cont.) 
Concurrency: html lhs Client: hs 
html lhs 
Mar  31  LIO  html  
Apr  2  LIO, improved  hs  
Apr  7  LIO, improved, continued  
Apr  9  Persistent Data Structures  Persistent: html lhs BST: html lhs RedBlack: html lhs  html lhs 
Apr  14  GADTs 
GADTs: html lhs RedBlackGADT:html lhs RedBlackGADT1:html lhs 

Apr  16  GADTs continued Type checking 
RedBlackGADT:html lhs RedBlackGADT1:html lhs WhileTypes: html lhs 

Apr  21  Type inference for FUN  FunTypes:html lhs 
html lhs 
Apr  23  Type inteference, continued  FunTypes:html lhs 
html lhs 
27  No class: Thanksgiving break  
Dec  2  No class  
4  Typed FUN (cont.) 
see above  FunTypes: html lhs 

9  Project presentations 
News :
Welcome to CIS 552!
See the home page for basic
information about the course, the schedule for the lecture notes
and assignments, the resources for links to the required software
and online references, and the syllabus for detailed information about
the course policies.