Want to learn and master Haskell?

Join Exercism’s Haskell Track for access to 107 exercises with automatic analysis of your code and personal mentoring, all 100% free.

Explore exercises

About Haskell

107 coding exercises for Haskell on Exercism. From Binary Search Tree to State of Tic-Tac-Toe.

Get better at programming through fun, rewarding coding exercises that test your understanding of concepts with Exercism.

See all Haskell exercises on Exercism

Key Features of Haskell


Purely functional

Pure functions always produce the same output for the same input, so are more predictable.


Lazy evaluation only provides results as needed, allowing for infinite data structures.

Strong, static typing

Strong, static types mean more errors are caught before the program is run.

Type inference

Automatic inference of types makes the code lighter and the developer more productive.

Type classes

Categorising types into classes provides type-safe overloading.

Algebraic data types

Powerful data types provide a high degree of convenience and safety.

Get mentored the Haskell way

Every language has its own way of doing things. Haskell is no different. Our mentors will help you learn to think like a Haskell developer and how to write idiomatic code in Haskell. Once you've solved an exercise, submit it to our volunteer team, and they'll give you hints, ideas, and feedback on how to make it feel more like what you'd normally see in Haskell - they'll help you discover the things you don't know that you don't know.

Learn more about mentoring

Community-sourced Haskell exercises

The Haskell track on Exercism has 107 exercises to help you write better code. Discover new exercises as you progress and get engrossed in learning new concepts and improving the way you currently write.

See all Haskell exercises

Get started with the Haskell track

The best part, it’s 100% free for everyone.