My Haskell tutorial series keeps growing. I am publishing it through my School of Haskell account because it includes code that can be edited and run in place. There are many interactive exercises (with hidden solutions). Here’s the current list, but more is coming soon:

  1. Function call syntax. Dollars and dots.
  2. Function definition syntax. Main and a taste of pattern matching.
  3. First program. Pure functions, laziness, and a taste of monads.
  4. Start of the Calculator project. Types, recursion, conditionals.
  5. Tokenizer. Data types, lists.
  6. Tokenizer. Function types, currying, guards.
  7. Tokenizer. Higher order functions, lambdas, map, filter, fold.
  8. Parser. Top-down recursive parser, dealing with state, case/of clause.
  9. Evaluator. Data.Map, Maybe, module system, expression problem.
  10. Error handling. The Either monad, type classes.
  11. State Monad. Threading the symbol table using do notation.
  12. Monadic Bliss. Monadizing the calculator. [coming soon]
  13. Parsing Combinators. [coming soon]