3 min read
What Can You Do With Haskell?
Knowing what Haskell is used for makes it easier to stay motivated while learning the basics:
- Compilers and language tools — Haskell's data types and pattern matching are ideal for parsers, type checkers, and code generators. Pandoc (document conversion), ShellCheck (shell script linter), and the Elm, PureScript, and Agda compilers are written in Haskell.
- Web back ends and APIs — frameworks such as Servant, Yesod, IHP, and Scotty build type-safe web services.
- Finance — pricing engines, trading systems, and domain-specific languages for contracts, where correctness matters more than anything.
- Blockchain — Cardano's node and its Plutus smart-contract platform.
- Command-line tools — fast, single-binary tools that are easy to distribute.
- Research and teaching — programming language research, formal methods, and university courses on functional programming.
You'll build smaller versions of several of these in the project lessons at the end of each level.