Jump to ratings and reviews
Rate this book

Finding Success (and Failure) in Haskell

Rate this book

Unknown Binding

2 people are currently reading
25 people want to read

About the author

Type Classes

1 book1 follower

Ratings & Reviews

What do you think?
Rate this book

Friends & Following

Create a free account to discover what your friends think of this book!

Community Reviews

5 stars
5 (55%)
4 stars
3 (33%)
3 stars
1 (11%)
2 stars
0 (0%)
1 star
0 (0%)
Displaying 1 - 3 of 3 reviews
Profile Image for Ruben.
100 reviews10 followers
August 9, 2020
Between 4* and 5*.

I had been trying to "learn" Haskell for around 3 years or so, now. Where "learn" means _write code complex enough to get a glimpse of most functionality, understanding enough of the build and develop system so I can become confident with it on my own". I had tried Sutton's book, LYaHFGG and many others, and it had always eluded me.

This book finally made it stick, with one very good helper: I finally got ghcide working and that is a game changer. Now, I feel confident I can start writing some Haskell for my own personal projects and figure it out on my own. Note that I started this book last year, but re-started it 4 days ago. It just needs 7-8 hours or so if you have access to a computer where you can read and code at the same time.

In the book you are going to write very simple code to:
- Get input from the user (a username and a password)
- Validate it with a couple of rules
- Print out the errors in validation or a welcome message.

As easy as that, but on the way you'll learn fundamental Haskell concepts and write enough code to think "this wasn't _as hard_". From here then you can probably dive on your own. The book is structured to introduce concepts very slowly. Not as slowly as a Haskell version of "The Little Lisper" but slow enough (The Little Haskeller would be a great book, but probably several thousand pages long).

Some things worth noting, though, are:
1. The exercises should be done, but shouldn't be done conundrum. In my experience, solving the exercises on this book and typing along has been what made the difference. _But_ most exercises are "rewrite this method you wrote in the last chapter using this new abstraction/tool/helper". But then, in follow-up chapters the edits in the code to add functionality depend on the pre-exercise versions (or at least in most cases) which makes for a not great experience (in particular the NonEmpty one, that one was pretty horrible). Keep this in mind: when you rewrite your methods in an exercise use a different name.

2. The last two chapters (_Coercible_ and _Generalizing Further_) look significantly more rushed. Before these, all concepts (more or less) were introduced in a very slow and smooth way (with some exceptions and some hiccups). These two felt rushed, cramming a lot of content to "get to the end". Or at least that's the feeling you get when you make it there.
4 reviews
February 27, 2021
Great book going over some basic concepts that are necessary for working in Haskell. I was already familiar with a lot of the material covered in this book but I still got a lot of value out of reading it and going through the exercises. In particular, I had never heard about coercion before and that was something insightful that I now use whenever I write Haskell code.
Profile Image for Dan.
57 reviews
August 22, 2019
Probably should have skipped ahead to Chapter 6 or 7 but a reasonable stroll through some material I hadn't done much with.
Displaying 1 - 3 of 3 reviews

Can't find what you're looking for?

Get help and learn more about the design.