HackerTube.live
Books / Functional Programming

THE READING ROOM / BOOK GUIDE

Real World Haskell

Bryan O'Sullivan; John Goerzen; Don Stewart

A practical guide to Haskell for programmers who want to build working software, written by three authors active in the language's library and tooling community.

About the book

Real World Haskell by Bryan O'Sullivan, John Goerzen and Don Stewart presents Haskell as a language for building usable programs. The book moves from the language's core ideas, including types, functions and purity, toward the concerns that appear when software meets actual data, users and systems.

Its orientation is practical. The authors write as working programmers addressing other programmers, and the material connects Haskell's abstractions to tasks such as parsing, file handling, networking and interacting with external systems. The book assumes some prior programming experience and treats functional thinking as a skill to develop through examples.

The three authors bring complementary perspectives from library development and open source work, which shapes the book's attention to tooling and real code. It is a product of its moment in Haskell's history, when the language's ecosystem was smaller and conventions differed from today's.

How to read it

Read the early chapters slowly enough to become comfortable with types and pure functions before moving on. The later material depends on that foundation, and skimming the type signatures will make the examples harder to follow than they need to be.

The examples reward active reading. Try modifying them, predict what the compiler will say, and run the code where possible. Some libraries and tooling have changed since the book appeared, so expect to consult current documentation alongside the text rather than treating every code sample as immediately runnable.

Who it suits

Programmers with experience in another language who want to understand how Haskell supports real software will find a structured path here. Readers curious about functional programming as a working discipline get concrete material to study. Those who learn best from annotated examples and gradual exposure to library code will fare better than readers seeking a compact reference.

Reading considerations

Haskell's ecosystem has moved since the book appeared. Package management, libraries and common idioms may differ from what the text shows, so check current documentation for anything you intend to use. Treat the code as a guide to concepts and expect some adaptation. The book also reflects its authors' choices about which practical domains to cover, so it is not a complete survey of the language or its contemporary tooling.

Follow the HN conversation

122 different recommenders are recorded in the upstream dataset. These are AI-classified source counts, not an independent rating.

Search HN comments about this book ↗

Explore videos on the same subject ↗

Book notes prepared with DeepSeek, using catalogue records and Open Library subject information. They are reading guidance, not a personal review or a verified chapter-by-chapter account. Book details can vary by edition. HN data methodology · Book metadata and covers.