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 web-page well in advance. Furthermore, the student is expected to find out about in-class announcements from their colleagues/instructor.
No. | |
|
---|---|---|
Class 1 | Functional Programming Basics | Chap. 1 (LP) Chap. 1 (JU) |
Class 2 | Higher-order 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. 3-5 (JU) |
Class 6 | SML-97 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:45-7:45pm) |