Haskell
Purely functional programming
Created
1990 by Haskell Committee
Type
Purely functional, lazy, statically typed
Key feature
Pure functions, type classes, monads
Influenced
Rust, Elm, TypeScript, Scala
Used for
Finance, academia, compilers, analysis
Lazy evaluation
Yes — computes only what's needed
File extension
.hs
Best for
Functional programming, compilers, academia
What is Haskell?
Haskell is a purely functional, lazily evaluated, statically typed programming language. It has influenced Rust, Elm, TypeScript, and Scala — and remains the gold standard for functional programming.
Why Haskell?
Haskell forces you to think differently — no mutable state, no side effects, no null. Types describe exactly what functions do. It's used in finance, academia, and anywhere correctness matters.
| Feature | Haskell | Elm | Rust |
|---|---|---|---|
| Paradigm | Purely functional | Purely functional | Multi-paradigm |
| Side effects | IO monad | Cmd/Effect | Explicit |
| Type inference | Excellent | Excellent | Excellent |
| Learning curve | Steep | Medium | Medium |
| Best for | Academia, finance | Web apps | Systems programming |
What you'll learn
| Chapter | What you'll know |
|---|---|
| Introduction | What Haskell is, how to run it |
| Basics | Functions, pattern matching, lists |
| Types | ADTs, type classes |
| FP | Monads, IO, laziness |
Start with introduction.