| Lecture date | Topics | Notes |
|---|---|---|
| Jan 13 | Syllabus, Lists and Tuples | Program file, command line log. Recommended reading: A History of Haskell: Being Lazy With Class. A youtube video on history of Haskell is available here. |
| Jan 15 | Lists, currying of functions, partial application | Program file, command line log. |
| Jan 20 | Anonymous functions, higher-order functions | Program file, command line log. |
| Jan 23 | Foldr and Foldl, defining data types in Haskell | Program file, command line log. |
| Jan 27 | Tree traversal, fold and map for trees, Maybe data type | Program file, command line log. |
| Jan 29 | Introduction to type classes | Program file, command line log. |
| Feb 3 | Monoids, categories and functors | Program file, command line log, lecture note. Related reading from wikipedia: categories, functors |
| Feb 5 | Functors composition and natural transformations | Program file. Related reading from wikipedia: natural transformation |
| Feb 10 | Category of endo-functors, monads, join and bind | Program file, lecture note. Related reading from wikipedia: monad |
| Feb 12 | Maybe monad, sequencing monadic computation with bind, do-notation | Program file. |
| Feb 17 | List monad and list comprehension, State monad | Program file. |
| Feb 19 | Applications of state monad, IO monad | Program file. |
| Feb 24 | System.Random, starting of Parser monad | Program file, command line log. |