The programming assignments will be coded in SML '97 (Standard ML of New Jersey). and Haskell.
Attendance Policy
All registered students are expected to attend all lectures. In case a student is absent from a lecture due to unavoidable circumstances, the student is still responsible for the material covered in the class, as it is typically available from the course webpage well in advance. Furthermore, the student is expected to find out about inclass announcements from their colleagues/instructor.
No.  


Class 1  Functional Programming Basics  Chap. 1 (LP) Chap. 1 (JU) 
Class 2  Higherorder functions  Chap. 2, 5 (LP) Chap. 2, 5 (JU) 
Class 3  Type inference  Chap. 2, 3 (LP) 
Class 4  Polymorphic Type System  
(Fixed Points)  
Class 5  Programming with lists: Pattern matching  Chap. 3 (LP) Chap. 35 (JU) 
Class 6  SML97 Specifics  
Class 7  Introduction to Haskell  
Class 8  Fold operations : foldr, foldl  Chap. 5 (LP) Chap. 5 (JU) 
Class 9  Midterm Exam (April 30)  
Class 10  Types : Concrete and Abstract  Chap 6 (JU) 
Class 11  Examples  Chap 7 (LP) 
Class 12  Modules  Chap 7 (LP) Chap. 8 (JU) 
Class 13  (cont'd)  
Class 14  Recursion and Induction  Chap. 6 (LP) 
Class 15  Examples (Combinatorial Functions)  
Class 16  Records; Exceptions; References;  Chap 8 (LP) Chap. 7 (JU) 
Class 17  Efficiency; Streams;  Chap. 5 (LP) 
Class 18  Introduction to Haskell  
Class 19  (Adv. Haskell) (haskell.pdf)  
Class 20  Lambda Calculus  
Final Exam (June 9, 5:457:45pm) 