awesome-learning-haskell
A collection of resources which were useful to Tweagers for learning Haskell and its various aspects
General resources
Books
- Algebra-Driven Design by Sandy Maguire
- Haskell in Depth by Vitaly Bragilevsky
- Haskell Programming from first principles by Christopher Allen and Julie Moronuki
- Learn Haskell by building a blog generator by Gil Mizrahi
- Programming in Haskell by Graham Hutton
- The simple Haskell handbook by Marco Sampellegrini
- Thinking with Types by Sandy Maguire
Videos
Specific topics
Category theory
Dependent types
Deriving
Design patterns
- The handle pattern by Jasper Van der Jeugt
- The service pattern by Simon Meier
Extensions
Functional programming
Functors, applicatives and monads
Generic programming
- An introduction to typeclass metaprogramming by Alexis King
- Datatype-generic programming by Andres Löh
IO
- Input and Output
- Introduction to IO
- Introduction to Haskell IO by Gabriella Gonzales
- Introduction to Haskell IO/Actions
Optics
Parser Combinators
Performance
Profunctors
String types
- Eat Haskell String Types for Breakfast by Ziyang Liu
- Haskell String Types by Alexey Shmalko
- String types by FPComplete
- Untangling Haskell's Strings by Monday Morning Haskell