10 best haskell books this year [with bonus haskell course]

10 Best Haskell Books in 2022 [With BONUS Haskell Course]

🧠 Did you know? The Haskell programming language was named after logician Haskell Curry.

What is Haskell?

Haskell is a general-purpose, functional programming language that is statically typed. It’s complete with type inference and lazy evaluation.

Programs in Haskell are written as mathematical functions.

What is GHC in Haskell?

The Glasgow Haskell Compiler is an open-source, cross-platform compiler and interactive environment for Haskell. It generates fast code (especially for concurrent programs).

It was designed by an international group of researchers to:

✅ make a robust and portable compiler for Haskell

✅ provide a modular foundation researchers can extend

✅ learn how real programs behave

GHC supports language extensions such as concurrency, extensions and functional dependencies.

What companies use Haskell?

Some well-known companies that use Haskell include:

✅ Facebook

✅ IBM

✅ Twitter

✅ Microsoft

And beyond.

🧠 Did you know? Facebook fights spam with Haskell.

This post contains affiliate links. I may receive compensation if you buy something. Read my disclosure for more details.

Today we’re looking at the best Haskell books.

And as a sweet bonus, we’re also looking at a Haskell course: Learn Functional Programming in Haskell on Educative.io. You can learn more about this course below.

TLDR: Best Haskell Books This Year

🔥 Best Overall 🔥
Programming in Haskell

💥 Best for Newbies 💥

Learn You a Haskell for Great Good!
&
Get Programming with Haskell

💸 Best Value 💸

Practical Haskell: A Real World Guide to Programming

1. Programming in Haskell

↘️ Ideal for: programming newbies
↘️
Topics covered:
fundamental and advanced Haskell concepts

Programming in Haskell is one of the best Haskell books on our list.

After a comprehensive introduction, you’ll discover some of the most important concepts in Haskell programming:

✅ types and classes

✅ recursive functions

✅ high-order functions

✅ list comprehensions

And beyond. Then you’ll dive into interactive programming, monads, lazy evaluations and more.

The fun part? You’ll build a fully functional tic-tac-toe game.

➡️ Programming in Haskell was written by Graham Hutton who has been teaching Haskell for over 20 years.

See what Haskell developers are saying about Programming in Haskell:

…This book is a masterpiece of functional programming and lazy evaluation…

– Felipe Balbi, Haskell Developer


2. Learn You a Haskell for Great Good!: A Beginner’s Guide

↘️ Ideal for: Haskell newbies
↘️
Topics covered:
syntax, recursion, types

Learn You a Haskell for Great Good! published by the ever awesome No Starch Press is one of the best Haskell books for beginners.

In this fun, lighthearted book, you’ll discover Haskell in a more simple way. It’s packed with illustrations, humor and pop references to pile drive concepts into your brain.

Plus there are plenty of code examples.

You’ll start with the basics like:

✅ syntax

✅ recursion

✅ type

✅ type classes

Then you’ll go deeper into the language by learning about applicative functors, monads, zippers and more.

➡️ Learn You a Haskell for Great Good! takes a humorous approach to teaching you Haskell concepts.

See what Haskell developers are saying about Learn You a Haskell for Great Good!:

The best introduction to functional programming (specifically Haskell)…

– Gabriel Freites, Haskell Developer


🔥 Geena’s Hot Take

Learn You a Haskell for Great Good! is a fantastic way for beginners to learn Haskell.

Three words: No. Starch. Press.

3. Get Programming with Haskell

↘️ Ideal for: experienced developers new to Haskell
↘️
Topics covered:
functional programming, Haskell applications

get programming with haskell cover

Get Programming with Haskell published by Manning is another one of our best Haskell books for beginners.

But it’s not as whimsical as Learn You a Haskell for Great Good! So this is for more serious learners.

It’s great for beginners because the lessons are short and packed with examples and exercises. There are also plenty of illustrations to teach you:

✅ how to think in Haskell

✅ the basics of functional programming

✅ programming in types

And much more.

➡️ Get Programming with Haskell teaches beginners real-world applications for Haskell.

Solution to a Haskell problem in Get Programming with Haskell

4. Haskell in Depth

↘️ Ideal for: experienced Haskell developers
↘️
Topics covered:
libraries, testing, building apps

Haskell in Depth is one of the best Haskell books for experienced Haskell developers.

It prides itself in taking your from a mere Haskell mortal to a full-fledged Haskell developer.

You’ll go way beyond the basics and learn about more complex concepts like:

✅ building applications and web services

✅ using libraries

✅ organizing projects with Cabal and Stack

✅ testing and error-handling

And more.

➡️ Haskell in Depth is for developers who know Haskell basics that want to level up their skills in a major way.

See what Haskell developers are saying about Haskell in Depth:

Summary: this book is a must have for anyone serious about Haskell…

– Andre M. Van Meulebrouck, Haskell Developer

5. Parallel and Concurrent Programming in Haskell: Techniques for Multicore and Multithreaded Programming

↘️ Ideal for: experienced Haskell developers
↘️
Topics covered:
parallel programming, concurrent programming

Parallel and Concurrent Programming in Haskell is one of the best Haskell books for learning parallel and concurrent programming.

Haskell is filled to the brim with APIs and frameworks for writing parallel and concurrent programming. And you’ll explore these while learning about:

✅ express parallelism

✅ building parallel array-based computations

✅ running computations directly on the GPU

✅ building high-speed concurrent network servers

✅ writing distributed programs

And more.

➡️ Parallel and Concurrent Programming in Haskell is for experienced Haskell developers who want to hone their parallel and concurrent programming skills.


6. Practical Haskell: A Real World Guide to Programming

↘️ Ideal for: experienced programmers new to Haskell, experienced Haskell developers
↘️
Topics covered:
libraries, functional patterns, monads

Practical Haskell is one of the best Haskell books for experienced Haskell developers.

There is an introduction to Haskell. And you could get by if you’re experienced with another programming language. But we’re telling you now: it’s better if you go into this already familiar with Haskell programming.

If you’re experienced in Haskell, you’re going to have a much easier time with this book while learning about:

✅ Haskell libraries and tools

✅ functional patterns

✅ monads and monad transformers

✅ laziness and resource management

And beyond.

➡️ Practical Haskell takes experienced Haskell programmers to the next level of Haskell programming.


7. Algorithm Design with Haskell

↘️ Ideal for: experienced Haskell developers
↘️
Topics covered:
Haskell algorithms

Algorithm Design with Haskell is one of the best Haskell books for learning algorithms.

It’s for experienced developers who want to learn five principles of algorithm design with Haskell:

✅ divide and conquer

✅ greedy algorithms

✅ thinning

✅ dynamic programming

exhaustive search

You’ll find nearly 300 exercises to put your skills to the test.

➡️ Algorithm Design with Haskell focuses exclusively on algorithms that create shorter programs in Haskell.


8. Haskell Cookbook: Build Functional Applications Using Monads, Applicatives, and Functors

↘️ Ideal for: experienced Haskell developers
↘️
Topics covered:
functional data structures, concurrency, parallelism

Haskell Cookbook is one of the best Haskell books for building functional applications.

With this cookbook, you’ll explore a series of common Haskell problems and solutions. It covers a range of topics including:

✅ functional data structures and algorithms

✅ type system

✅ concurrency and parallelism

✅ parsing

You’ll also explore how to build web services with Haskell.

➡️ With Haskell Cookbook, you’ll learn how to build functional applications.


9. Thinking Functionally with Haskell

↘️ Ideal for: Haskell newbies
↘️
Topics covered:
functional programming

Thinking Functionally with Haskell is another book by Richard Bird (Algorithm Design with Haskell).

But instead of algorithms, this book strictly focuses on functional programming with Haskell.

After learning the basics of functional programming, you’ll discover:

✅ expressions, types and values

✅ lists

✅ proofs

✅ efficiency

And much more.

You’ll also build a Sudoku game, a calculator and more.

➡️ Thinking Functionally with Haskell lets you put your skills to the test by building applications.


10. Haskell from the Very Beginning

↘️ Ideal for: Haskell newbies
↘️
Topics covered:
lists, functions, lazy evaluation

Haskell from the Very Beginning is one of the best Haskell books for students with no programming experience.

In this book, you’ll learn about:

✅ lists

✅ functions

✅ lazy evaluation

And other fundamental Haskell concepts.

You’ll find plenty of problems and solutions to issues commonly found in Haskell.

➡️ With Haskell from the Very Beginning, you’ll learn how to build Haskell programs.


BONUS: Best Haskell Course: Learn Functional Programming in Haskell by Educative.io

Books are great for learning Haskell. But sometimes you need an extra interactive boost.

That that’s where Learn Functional Programming in Haskell comes in. This is an interactive course.

So instead of sitting back and watching videos, you’ll work in coding playgrounds while facing exciting challenges and quizzes. In this course, you’ll learn how to:

✅ write functions using recursion

✅ work with higher order functions

✅ create custom data types

✅ handle IO operations

And much more.

You can get Learn Functional Programming in Haskell for just $29.

Learn Functional Programming in Haskell has interactive coding environments embedded in the lessons

Best Haskell Course: Conclusion

Today we looked at the best Haskell books including:

🔥 Best Overall 🔥
Programming in Haskell

💥 Best for Newbies 💥

Learn You a Haskell for Great Good!
&
Get Programming with Haskell

💸 Best Value 💸

Practical Haskell: A Real World Guide to Programming

We also checked out one of the best Haskell courses Learn Functional Programming in Haskell on Educative.io.

So regardless of your Haskell needs, we think these are the best Haskell books out there.


Haskell developers are also reading:


  1. What is Haskell?

    Haskell is a general-purpose, functional programming language that is statically typed. It's complete with type inference and lazy evaluation. Programs in Haskell are written as mathematical functions. You can learn more about Haskell in today's post where we look at Haskell books and one of the best Haskell courses.

  2. What are the best Haskell books?

    The best Haskell books include Programming in Haskell, which we think is the overall go-to. For newbies, we liked Learn You a Haskell for Great Good! and Get Programming with Haskell. And for value, we chose Practical Haskell: A Real World Guide to Programming. To learn about these books and more, be sure to check out today's post.

  3. What is the best Haskell course?

    We think Learn Functional Programming in Haskell on Educative.io is the best Haskell course. It's an interactive course. So instead of sitting back and watching videos you'll work in coding playgrounds while facing exciting challenges and quizzes. In this course, you'll learn how to write functions using recursion, work with higher order functions, create custom data types, handle IO operations and much more. Read today's post to learn more about Learn Functional Programming in Haskell.

  4. What companies use Haskell?

    Some well-known companies that use Haskell include Facebook, IBM, Twitter, Microsoft and beyond. In fact, Facebook fights spam with Haskell. To learn more about Haskell, look at today's post where we check out Haskell books and one of the best Haskell courses out there.

  5. What are some functional programming languages?

    Functional programming languages include Haskell, Scala, Erlang, Clojure and more. In today's post, we're taking a closer look at Haskell. Here you can find books and a course to learn Haskell or improve your existing skills.

  6. What is GHC in Haskell?

    The Glasgow Haskell Compiler is an open-source, cross-platform compiler and interactive environment for Haskell. It generates fast code (especially for concurrent programs). It was designed by an international group of researchers to make a robust and portable compiler for Haskell, provide a modular foundation researchers can extend, and learn how real programs behave. GHC supports language extensions such as concurrency, extensions and functional dependencies. You can read more about GHC and Haskell in today's post.