Stephen Diehl
Stephen Diehl
  • Index
  • Blog
    • Python
    • Mathematics
    • Machine Learning
    • Humor
    • Logic Programming
    • Physics
    • Public Policy
    • Quantitative Finance
    • Functional Programming
    • Compilers
    • Formal Methods
    • Haskell
  • Writings
  • Contact Me
  • PGP Key
  • Github
  • Bluesky
  • LinkedIn
  • RSS

A Haskell Reading List

Here is a list of papers and writings of what I consider are essential Haskell reading.

  • Haskell 2010 Language Specification
  • Typeclassopedia
  • The Essence of Functional Programming
  • How to make ad-hoc polymorphism less ad hoc
  • Monads for functional programming
  • Monad Transformers: Step-By-Step
  • Some interesting features of Haskell's type system
  • Functional Programming with Bananas, Lenses, Envelopes and Barbed Wire
  • Applicative Programming with Effects
  • The Algebra of Algebraic Datatypes
  • Kleisli Arrows of Outrageous Fortune
  • Theorems for free!
  • Beautiful Concurrency
  • Imperative Functional Programming
  • Reverse Engineering Machines with the Yoneda Lemma
  • From Monoids to Monads
  • Tackling the awkward squad
  • Functional Reactive Animation
  • Flipping Arrows in coBurger King
  • Duality for Haskellers
  • Parallel and Concurrent Programming in Haskell
  • Beautiful Differentiation
  • Typed Tagless Interpretations and Typed Compilation
  • Species and Functors and Types, Oh My!
  • The Implementation of Functional Programming Languages
  • Datatype-generic Programming in Haskell
  • Giving Haskell a Promotion
  • Faking It: Simulating Dependent Types in Haskell
  • OutsideIn(X): Modular Type Inference with Local Assumptions

© 2009 - 2025 Stephen Diehl. All rights reserved.