Overview
For newcomers¶
These notes are a widely used introduction to Haskell.
Learn You a Haskell is a friendly introductory book, with an interactive notebook version.
This Youtube series is a popular video tutorial for Haskell.
Project-based learning¶
Learn Haskell by building a blog generator is a free book that takes a project-based approach to learning Haskell.
Community¶
Haskell has an active subreddit with a dedicated section for questions.
It also has its own forum.
Understanding the ecosystem¶
This package overview is very useful for quickly understanding what Haskell packages to use for what tasks.
haskell-links.org presents links from #haskell IRC/Matrix chatters, with a fast search interface.
More advanced resources¶
This reference guide/tutorial carefully and clearly details important advanced concepts and features in Haskell.
This performance guide explains how to engineer programs in Haskell to be as fast as possible.
The Haskell report is an exhaustive and carefully written reference manual of all of Haskell.
Friendly libraries¶
pipes is a useful library for streaming which has very friendly documentation including a tutorial. This is a good library to understand how to think functionally, and how to use monads practically.
foldl is a beautifully documented library for writing folds (aka reduces) that are efficient and makes one pass over data. This is a good library to expand your understanding of Functor
and Applicative
, and to understand efficiency concerns in a functional language.
diagrams is a very well documented and powerful library for constructing 2D diagrams.
Compiler¶
This is the guide to the Haskell compiler, GHC
A guide on how to implement an interpreter (with sophisticated types)