Ratings1
Average rating4.5
I think all the chapters from the beginning to chapter 18 on “Monads” are solid, and you can be productive with Haskell if you left at this point. The rest are not necessarily practical; and sometimes I felt that these chapters are quite lengthy & need more editorial support. If I need to summarise the book from chapter 19 to the end in one sentence, it would be, “You should read “Parallel and Concurrent Programming in Haskell: Techniques for Multicore and Multithreaded Programming” by Simon Marlow for better understanding”.
Moreover, a lot has changed since 2017 when the book is published. I've worked through Hoogle and GitHub a lot to worked out which libraries' API has been changed in order to finish the chapters that need third-party libraries.
Still, I've learnt a lot through chapter exercises and the authors' instructive guidance!
P/S:
I encountered some comments stating that this book isn't well-organised. IMO it's not something to be bothered. I'd not fully understood chapter 6 on “Typeclasses” until I finished the chapter 16 on “Functor”. As Chris wrote early in the book, because learning is a personal journey, you don't need to strictly follow the order the authors specified (I did jump around a lot).