Skip to content

Haskell

Warning

This documentation is under construction! If you're a newcomer to Haskell, come back here soon, but for now, try out other resources. If you're interesting in contributing, please get in touch or submit a PR!

Haskell is a general purpose programming language. It is unique in being both very principled in its design (pure functions only, simple syntax, very expressive types), but also practical (heavily-engineered compiler that can generate fast code).

  • Pros: highly modular code, low boilerplate, easy and safe refactoring
  • Cons: no manual memory management, some gaps in ecosystem

Here is some discussion of its most salient features, if you want to learn more:

Get started

How to use this guide

If you're totally new to Haskell, we recommend reading through the tabs at the top of the page from the left to the right.

Feel free also to use this guide as a reference. For example, you can search the docs like so if you need a quick example of how to use a certain construction like case.

Ask questions about pages you don't understand via the Comments section at the bottom of each page.

Contributing

Contribution from the Haskell community is heavily encouraged! See here.

Disclaimer

This documentation is a personal project, and not official Haskell documentation. Contributions are encouraged, by submitting a PR (see the button in the upper right corner of each page!)


Last update: January 13, 2023
Created: January 7, 2023