+++
title = "Learn You a Haskell for Great Good! - Miran Lipovača"
date = 2018-11-23

category = "review"

[taxonomies]
tags = ["books", "en-au", "miran lipovaca", "haskell"]
+++
{{ stars(stars=2) }}

I have mixed feelings about this book.

It starts really really well, explaining how the language works. And then it
falls on the trap of "functional programming" that, instead of focusing on what
you can do with the language, it goes lengths talking about monads, monoids,
functors and nondeterminism that you keep wondering why it is taking so long
explaining function programming instead of focusing on what you can do and when
you should use one.

There is even a bad description of "don't do this because it will look horrible
when you convert to this other form". Wondering if something will look horrible
if you write the same thing in a different form should never be a deterrent for
something.

Also, there is the language. Surely, Haskell adds a missing point in Lisp,
which are the types, but them it goes off the rails trying to remove
parenthesis and the result is a mass of weird symbols, all representing the
same thing. And you have, as I mentioned before, different forms to write the
same code, which makes the language highly irregular, one trait that really
pisses me off in programming languages. 
