Topics
- Recursion, pattern matching, guards, higher-order functions, list comprehensions
- Algebraic data types, type classes, polymorphism
Reading
- Real World Haskell: chapters 2, 3, 6
- Yorgey's Intro: chapters 1-5
Exercises
Notes
Topics
- Input/output, console programs
- Error handling, references
Reading
- Real World Haskell: chapters 4, 5, 7
Exercises
Notes
Topics
- Property-based testing
- Equational reasoning
Reading
References
Exercises
Notes
Topics
- Functors, Applicative Functors
- Monads
Reading
Exercises
Notes
Topics
- Non-determinism, continuations
- Parsing
Reading
- Real World Haskell: chapter 16
- Write Yourself a Scheme: chapter 2
References
Notes
Topics
- Laziness, infinite data
- Functional Object-Oriented Programming
Reading
Notes
Bonus Exercises
Topics
- Parallel annotations, array processing
- MVars, Software Transactional Memory (STM)
Reading
References
Notes
Topics
- Monad transformers
- Free monads, interpreters
Reading
References
Topics
- GADTs, indexed types
- Higher-rank polymorphism
Reading
References