Cover of Pearls of functional algorithm design

Pearls of functional algorithm design

by Bird, Richard · first published 2010

29mentions
17recommended by
22HN commenters
2011–2024first – last mentioned

77% recommend23% neutral

Why HN recommends it

Short chapters derive well-known algorithms, such as KMP matching, from naive versions by equational reasoning. Suits readers who already know Haskell and want to see functional problem-solving.

Summarised by Claude from recommending comments

"Richard Bird takes a radically new approach to algorithm design, namely, design by calculation. These 30 short chapters each deal with a particular programming problem drawn from sources as diverse as games and puzzles, intriguing combinatorial tasks, and more familiar areas such as data compression and string matching. Each pearl starts with the statement of the problem expressed using the functional programming language Haskell, a powerful yet succinct language for capturing algorithmic ideas clearly and simply. The novel aspect of the book is that each solution is calculated from an initia

Affiliate links. As an Amazon Associate I earn from qualifying purchases.

Mentions per year

60 2007: 0 mentions2008: 0 mentions2009: 0 mentions2010: 0 mentions2011: 3 mentions2012: 1 mention2013: 5 mentions2014: 6 mentions2015: 0 mentions2016: 3 mentions2017: 1 mention2018: 1 mention2019: 1 mention2020: 0 mentions2021: 1 mention2022: 0 mentions2023: 2 mentions2024: 1 mention2025: 0 mentions2026: 0 mentions200720172026

What Hacker News says

  • tel · Apr 5, 2014 · Recommends

    …is a lot of fun, if you've gotten your feet wet with Haskell for a while and want to see some really powerful examples of "functionally solving problems" I cannot recommend more highly Richard Bird's "Pearls of Functional Algorithm Design"[0]. All of the "Functional Pearls" papers are worth a read, but Bird's book is such a compressed, convenient, powerful collection of advanced functional problem solving style that I think anyone interested…

    on “Functionally Solving Problems With Haskell” ↗
  • ghc · Aug 26, 2013 · Recommends

    …fantastic little optimizations. I personally learned a lot from trying to reconstruct the thought process that must have led up to some of the algorithms implemented therein. The first book is called Pearls of Functional Algorithm Design, and while it focuses on implementation in Haskell, you don't need to be a functional programming expert to get a lot out of the book. The second book is called Foundations of Multidimensional and Metric…

    on “Algorithms, Part I: Kevin Wayne and Robert Sedgewick” ↗
  • radicality · Jul 20, 2014 · Recommends

    "Pearls of functional algorithm design" [0] is a fantastic book if you are interested in some more equational reasoning, I highly recommend it. [0] http://www.amazon.co.uk/Pearls-Functional-Algorithm-Design-R...

    on “Equational reasoning at scale” ↗
  • chollida1 · Oct 19, 2014 · Recommends

    For those of you who aren't familiar with the author's other works, it's worth taking a peek at his other books. I can whole heatedly recommend Pearls of Functional Algorithm Design http://www.amazon.com/Pearls-Functional-Algorithm-Design-Ric... It's a good cross between two other excellent books: - Jon Bentley's Programming Pearls http://www.amazon.com/Programming-Pearls-2nd-Jon-Bentley/dp/...…

    on “Thinking Functionally with Haskell – Richard Bird's New Book” ↗
  • scriptdevil · Jul 23, 2016 · Recommends

    …about newer functional data structures recently when looking for papers to put on my kindle for a long trip. The top answer to it has a tonne of links. Tangentially related, but I am currently reading Pearls of Functional Algorithm Design [2] - It is fascinatingly well written (though it isn't strictly about data structures only). I plan to read Fun of Programming [3] next which has a chapter on binary heap trees by Okasaki but the rest…

    on “Purely Functional Data Structures in Elm – course lecture notes (2015)” ↗
  • tel · Nov 30, 2016 · Recommends

    In response only to the third point, there are some very nice examples of "advanced" equational reasoning in the work of Richard Bird. Pearls of Functional Algorithm Design [0] is a great book for exploring this and demonstrates a very "expert" nature. [0]: https://www.amazon.com/Pearls-Functional-Algorithm-Design-Ri...

    on “Standardized Ladder of Functional Programming [pdf]” ↗
  • yangzx · Aug 14, 2018 · Recommends

    You can have a look at Richard Bird's book _Pearls of Functional Algorithm Design_. It's much more accessible than his earlier influential book _Algebra of Programming_. In this book, many well-known algorithms, e.g. KMP pattern matching, are derived from naive implementations by…

    on “Curry–Howard correspondence” ↗
  • ashutoshmehra · Mar 12, 2011 · Recommends

    I have read a few chapters of this very beautiful book by Richard Bird called "Pearls of Functional Algorithm Design": http://www.amazon.com/Pearls-Functional-Algorithm-Design-Ric... You should definitely check it out. If you already know Haskell and you love algorithms, that book will probably be more interesting…

    on “The Haskell Platform 2011.2 is out: GHC 7 for all ” ↗
  • dubya · Nov 14, 2011 · Recommends

    "Pearls of functional algorithm design" by Richard Bird is a fabulous book along these lines. It's not exactly light reading, but the chapters are short, and some of the results are surprising, like the faster implementation of nub (unique…

    on “Translating mathematics into code” ↗
  • nybbl3 · Jun 16, 2013 · Recommends

    Richard Bird took "Proofs from the Book" as an inspiration for his "Pearls of Functional Algorithm Design". I read a bit in it recently and there are really quite a few nice dderivations of functional programs, where the mathematical and the implementation part go hand in hand.

    on “Algorithms from the “Book”” ↗
  • tel · Mar 26, 2014 · Recommends

    I highly suggest reading Richard Bird's book "Pearls of Functional Algorithm Design". It's a really great way to get some insight into top-style FP.

    on “What it's like to use Haskell” ↗
  • tel · Apr 9, 2014 · Recommends

    …through. This post reflects both on that challenge and the underlying "decoder key" for beginning to scrape meaning out of the book. So now I will highly recommend reading this post and then reading Pearls of Functional Algorithm Design.

    on “How to Read "Pearls of Functional Algorithm Design"” ↗
  • fredyr · May 19, 2014 · Recommends

    Richard Bird, Philip Wadler - Introduction to Functional Programming http://www.amazon.com/Introduction-Functional-Programming-In... Richard Bird - Pearls of Functional Algorithm Design http://www.amazon.com/Pearls-Functional-Algorithm-Design-Ric... Christian Queinnec - Lisp in Small Pieces http://www.amazon.com/Lisp-Small-Pieces-Christian-Queinnec/d...

    on “Ask HN: What's the best programming book you've read recently?” ↗
  • tel · Jul 3, 2014 · Recommends

    Richard Bird's Pearls of Functional Algorithm Design is probably close for Haskell. http://www.amazon.com/gp/aw/d/0521513383?pc_redir=1404313638...

    on “Adopting a new programming language” ↗
  • todd8 · Oct 21, 2019 · Recommends

    Pearls of Functional Algorithm Design by Richard Bird. Is a collection that demonstrates through thirty small examples spread over the same number of chapters, the appeal of functional programming. Most books on functional programming get…

    on “Ask HN: What are the most fundamental books on computer science?” ↗

Keyboard shortcuts

/
Focus search
j / k
Next / previous book
Enter
Open focused book
Esc
Close / go back
g h
Go to Home
g t
Go to Top all-time
g m
Go to Most recommended
g r
Go to Rising
g f
Go to For You
?
Show this help