Skip to content

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)

Comments