Review: Learn You a Haskell for Great Good
jerf.org
jerf.org
http://learnyouahaskell.com/chapters
http://book.realworldhaskell.org/read/
LYAH has some great jokes in it. It's easier to remember funny things, since humor involves fracturing your worldview just a bit. This helped me ease my way into Haskell and loosen my brain up. Less rambling than _why's poignant guide or Programming Perl (the humor), and well-paced for beginners.
The point about humor is what I tried (poorly, I think) to get across in the line about offsetting the formality. You said it much better. It is more than just a random style choice, it turns out to be a core aspect of the book's approach, I think.
(Linking the competition feels faintly gauche to me, even if I do conclude they are complimentary rather than competitive. YMMV.)
Did you ever consider solving an equation to write some code? Haskellers sometimes do. Learn about fmap and foldr and then compare what you know to map/reduce.
* http://stackoverflow.com/questions/5710078/in-haskell-perfor...
Algebra of Programming FTW!
See Richard Bird (or others at Oxford) for more on this style. E.g. http://lambda-the-ultimate.org/node/1117
There's great power in the idea of single assign, and the notion of immutable objects (be it variables, or else) is getting many programmers to rethink their ideas, but saying "this is right because it's like in math" is selling the idea short, and not doing any justice to the strengths of functional programming.
I simply point out this feature because most people focus on language features and this is "programmer feature" that you might not think of if it wasn't pointed it out.
What jerf says matches my impressions, though I'm only 7 chapters in so far. (blame Kona. :) ) I think his "why Haskell is interesting" post has much more to it, though.
Also: Whoever binds No Starch's books does a great job! The lay-flat binding is appreciated, especially for books read at a REPL. (Same with _Land of Lisp_, for example.)
... except with this tutorial (I read it online). It is the only one that really made me understand the concept of monad. The book takes you from functors to monads, explaining you how everything is pretty logical, and that if there were not there, you would probably have invented them..
If you ever tried to learn Haskell but could wrap your head around monads, this book is for you.
This work is licensed under a Creative Commons Attribution-Noncommercial-Share Alike 3.0 Unported License because I couldn't find a license with an even longer name.I picked up LYAH because it looked interesting. Everyone says Haskell is such a weird language and I can't comment on that, but it certainly seems much more mathematical. I've been using it in parallell to my Algebra II class in school to solidify knowledge in both topics.
I recommend it to anyone, read it online at least! http://learnyouahaskell.com
I too was glad that there was a lot of introduction before the "hard" topics came into place. I do believe that the harder topics were explained rather well--certainly better than some of the other introductions I've seen online.
I just got my hardcopy in the mail today. I hope to reread some parts and "Put to use a Haskell for Great Good."