cta quote button

Best Haskell Books You Must Read

Read More

How Much Does It Cost to Hire Web Developers in Ukraine?

Our pricing is completely transparent: you pay your engineers’ salaries and a flat monthly fee for our services. No hidden charges.

Read More

1. Programming in Haskell (2016)

Author(s): Graham Hutton

2. Learn You a Haskell for Great Good!: A Beginner’s Guide (2011)

It’s all in the name: Learn You a Haskell for Great Good! is a hilarious, illustrated guide to this complex functional language. Packed with the author’s original artwork, pop culture references, and most importantly, useful example code, this book teaches functional fundamentals in a way you never thought possible.

You’ll start with the kid stuff: basic syntax, recursion, types and type classes. Then once you’ve got the basics down, the real black belt master-class begins: you’ll learn to use applicative functors, monads, zippers, and all the other mythical Haskell constructs you’ve only read about in storybooks.

As you work your way through the author’s imaginative (and occasionally insane) examples, you’ll learn to:

  • Laugh in the face of side effects as you wield purely functional programming techniques
  • Use the magic of Haskell’s “laziness” to play with infinite sets of data
  • Organize your programs by creating your own types, type classes, and modules
  • Use Haskell’s elegant input/output system to share the genius of your programs with the outside world

Short of eating the author’s brain, you will not find a better way to learn this powerful language than reading Learn You a Haskell for Great Good!

Excerpt from the Introduction

Haskell is fun, and that’s what it’s all about!

This book is aimed at people who have experience programming in imperative languages—such as C++, Java, and Python—and now want to try out Haskell. But even if you don’t have any significant programming experience, I’ll bet a smart person like you will be able to follow along and learn Haskell.

My first reaction to Haskell was that the language was just too weird. But after getting over that initial hurdle, it was smooth sailing. Even if Haskell seems strange to you at first, don’t give up. Learning Haskell is almost like learning to program for the first time all over again. It’s fun, and it forces you to think differently.

NOTE
If you ever get really stuck, the IRC channel #haskell on the freenode network is a great place to ask questions. The people there tend to be nice, patient, and understanding. They’re a great resource for Haskell newbies.

So, What’s Haskell?

Haskell is a purely functional programming language.

In imperative programming languages, you give the computer a sequence of tasks, which it then executes. While executing them, the computer can change state. For instance, you can set the variable a to 5 and then do some stuff that might change the value of a. There are also flow-control structures for executing instructions several times, such as for and while loops.

Purely functional programming is different. You don’t tell the computer what to do—you tell it what stuff is. For instance, you can tell the computer that the factorial of a number is the product of every integer from 1 to that number or that the sum of a list of numbers is the first number plus the sum of the remaining numbers. You can express both of these operations as functions.

> Read the Introduction (PDF) in its entirety.

Author(s): Miran Lipovaca

3. Haskell: The Craft of Functional Programming (3rd Edition) (International Computer Science Series) (2011)

Introducing functional programming in the Haskell language, this book is written for students and programmers with little or no experience.  It emphasises the process of crafting programmes, problem solving and avoiding common programming pitfalls.

Covering basic functional programming, through abstraction to larger scale programming, students are lead step by step through the basics, before being introduced to more advanced topics.

This edition includes new material on testing and domain-specific languages and a variety of new examples and case studies, including simple games. Existing material has been expanded and re-ordered, so that some concepts – such as simple data types and input/output – are presented at an earlier stage.

Author(s): Simon Thompson

4. The Forest Unseen: A Year’s Watch in Nature (2013)

Author(s): David George Haskell

5. Real World Haskell (2008)

Author(s): Bryan O’Sullivan, John Goerzen

7. Thinking Functionally with Haskell (2014)

Richard Bird is famed for the clarity and rigour of his writing. His new textbook, which introduces functional programming to students, emphasises fundamental techniques for reasoning mathematically about functional programs. By studying the underlying equational laws, the book enables students to apply calculational reasoning to their programs, both to understand their properties and to make them more efficient. The book has been designed to fit a first- or second-year undergraduate course and is a thorough overhaul and replacement of his earlier textbooks. It features case studies in Sudoku and pretty-printing, and over 100 carefully selected exercises with solutions. This engaging text will be welcomed by students and teachers alike.

Author(s): Richard Bird

8. The Haskell Road to Logic, Maths and Programming. Second Edition (Texts in Computing) (2004)

Long ago, when Alexander the Great asked the mathematician Menaechmus for a crash course in geometry, he got the famous reply “There is no royal road to mathematics.’’ Where there was no shortcut for Alexander, there is no shortcut for us. Still, the fact that we have access to computers and mature programming languages means that there are avenues for us that were denied to the kings and emperors of yore. The purpose of this book is to teach logic and mathematical reasoning in practice, and to connect logical reasoning with computer programming in Haskell. Haskell emerged in the 1990s as a standard for lazy functional programming, a programming style where arguments are evaluated only when the value is actually needed. Haskell is a marvelous demonstration tool for logic and maths because its functional character allows implementations to remain very close to the concepts that get implemented, while the laziness permits smooth handling of infinite data structures. This book does not assume the reader to have previous experience with either programming or construction of formal proofs, but acquaintance with mathematical notation, at the level of secondary school mathematics is presumed. Everything one needs to know about mathematical reasoning or programming is explained as we go along. After proper digestion of the material in this book, the reader will be able to write interesting programs, reason about their correctness, and document them in a clear fashion. The reader will also have learned how to set up mathematical proofs in a structured way, and how to read and digest mathematical proofs written by others. This is the updated, expanded, and corrected second edition of a much-acclaimed textbook. Praise for the first edition: ‘Doets and van Eijck’s “The Haskell Road to Logic, Maths and Programming’’ is an astonishingly extensive and accessible textbook on logic, maths, and Haskell.’ Ralf Laemmel, Professor of Computer Science, University of Koblenz-Landau

Author(s): Kees Doets, Jan van Eijck

9. The Songs of Trees: Stories from Nature’s Great Connectors (2018)

The author of the Pulitzer Prize finalist The Forest Unseen visits with nature’s most magnificent networkers — trees 

“Fluent, compelling, and intoxicatingly rich.” – Times Literary Supplement

SELECTED by “Science Friday” and “Brain Pickings” as one of the Best Science Books of 2017 and by Forbes.com as one of the 10 Best Environment, Climate Science and Conservation Books of 2017

David Haskell has won acclaim for eloquent writing and deep engagement with the natural world. Now, he brings his powers of observation to the biological networks that surround all species, including humans. Haskell repeatedly visits a dozen trees, exploring  connections with people, microbes, fungi, and other plants and animals. He takes us to  trees in cities (from Manhattan to Jerusalem), forests (Amazonian, North American, and boreal) and areas on the front lines of environmental change (eroding coastlines, burned mountainsides, and war zones.)  In each place he shows how human history, ecology, and well-being are intimately intertwined with the lives of trees.
 
Scientific, lyrical, and contemplative, Haskell reveals the biological connections that underpin all life.  In a world beset by barriers, he reminds us that life’s substance and beauty emerge from relationship and interdependence.

Author(s): David George Haskell

10. From Reverence to Rape: The Treatment of Women in the Movies, Third Edition (2016)

A revolutionary classic of feminist cinema criticism, Molly Haskell’s From Reverence to Rape remains as insightful, searing, and relevant as it was the day it was first published. Ranging across time and genres from the golden age of Hollywood to films of the late twentieth century, Haskell analyzes images of women in movies, the relationship between these images and the status of women in society, the stars who fit these images or defied them, and the attitudes of their directors. This new edition features both a new foreword by New York Times film critic Manohla Dargis and a new introduction from the author that discusses the book’s reception and the evolution of her views.

Author(s): Molly Haskell, Manohla Dargis

11. Get Programming with Haskell (2018)

Unlike any other programming language, Haskell is purely functional with a strong type system and lazy evaluation. It is arguable the most interesting language but also has the reputation of being one of the most challenging to learn. Learning Haskell doesn’t have to be difficult, and this book can help!

Get Programming with Haskell introduces you to the Haskell language without drowning you in academic jargon and heavy functional programming theory. By working through 43 easy-to-follow lessons, you’ll learn Haskell by doing Haskell. This book starts with first concepts, building your knowledge with concrete examples and exercises. You’ll learn to think the Haskell way, as you start to understand the language and how to use it effectively. And you’ll really appreciate the crystal-clear illustrations, quick-checks, and open-ended tasks that make sure you’re solid on each new concept before you move along!

Purchase of the print book includes a free eBook in PDF, Kindle, and ePub formats from Manning Publications.

Author(s): Will Kurt

12. Drum Method: For Band and Orchestra (2006)

(Drum Instruction). This best-selling instruction book was developed to meet the needs of the young student aspiring to become a drummer in the school band or orchestra. Book 1 spans 52 lessons and includes: rudiments * study of various time figures found in every day playing * care and maintenance of drums * and more. Building on the lessons from Book 1, Book 2 covers 26 rudiments and contains additional studies in various time signatures utilizing the 26 rudiments.

Author(s): Haskell W. Harr