

Haskell Programming - joelgrus
http://haskellbook.com/

======
akurilin
Copypasta from the first time this was posted (with the wrong URL):

Pretty thrilled about this book.

There are rather few recent Haskell texts with beginners in mind, and Chris of
the
[https://github.com/bitemyapp/learnhaskell](https://github.com/bitemyapp/learnhaskell)
fame is probably one of the most qualified people out there to teach the
subject. At Front Row we actually use learnhaskell pretty heavily with our new
developers. For us it's the central hub for devs to start learning the
language.

Anything that helps people get started and advance through the skillset is a
huge boon to the community.

~~~
saosebastiao
He may possibly be a qualified teacher of Haskell, but he's a terrible
ambassador for it. A cursory glance through his post history shows him time
after time attacking people who dare write about something they like about
other languages...all with his smug air of superiority. Want to write a post
about asynchronous patterns in your favorite language? He'll be right there
dismissing everything you say with some smug comment about how Haskell had it
first. I've seen his handle pop up everywhere from Rust threads about Traits
to JavaScript threads about async/await. That is exactly the type of
personality I found prominent when I decided to learn Haskell, and it is a
huge contributing reason to why I won't go back. There are far better ways to
evangelize your language than to troll and abuse fans of other languages.

~~~
ddellacosta
This twitter exchange I had with him and the infamous Tony Morris was all I
needed to know I don't want or need to have anything to do with either of them
--and furthermore spending time learning from either of them may actually hurt
me, if it encourages me to starting thinking the same way they do:

[https://twitter.com/dubitable/status/469359776074563584](https://twitter.com/dubitable/status/469359776074563584)

I love Haskell and spend a lot of time learning it, but I've gotten by just
fine without his resources. The fact is that a lot of far more tolerant and
far less self-aggrandizing folks have been patiently teaching Haskell for a
long time. Check out #haskell (or #nothaskell, lots of nice folks there too)
and ask for help if you need it.

~~~
wz1000
> I love Haskell and spend a lot of time learning it, but I've gotten by just
> fine without his resources.

An author/creators personal qualities does not detract from their work. For
example, Orson Scott Card, the author of Ender's Game has some pretty
homophobic and bigoted views. However, that does not take away from the fact
that his books are enjoyable.

------
rattray
Perhaps this is the wrong way to phrase this question... but what's wrong with
[http://learnyouahaskell.com](http://learnyouahaskell.com) ? Personally I
found it very approachable, but then I've never tried another way of learning
Haskell. Just curious to hear what the common critiques of it are.

~~~
coolsunglasses
Given how widely known LYAH is, it's totally a reasonable question to ask.

I've collated most of my thoughts on different Haskell learning resources and
where the challenges are for learners in this post:
[http://bitemyapp.com/posts/2014-12-31-functional-
education.h...](http://bitemyapp.com/posts/2014-12-31-functional-
education.html)

Please let me know if you have further questions.

~~~
rattray
Wow, great - thanks! Sure wish I had taken cis194 while I was at Penn, people
always talked about how great the course was but I didn't realize it was best-
course-in-the-world good. (I wasn't a CIS student and didn't think I would be
programming professionally upon graduation).

~~~
coolsunglasses
>best-course-in-the-world good

Well, best that we're aware of. It's a total accident and the friendly
insistence of a nice Australian Haskeller (they're really lovely people btw)
that I even discovered it.

I think a lot of the value of cis194 is also in who is teaching it. Yorgey has
been at this for awhile and wrote the incredible typeclassopedia:
[https://wiki.haskell.org/Typeclassopedia](https://wiki.haskell.org/Typeclassopedia)
which my coauthor and I are so fond of we had bound printed copies made.

Then you had Richard Eisenberg teaching it in '14 - he's really good too. I
took his GADTs workshop at Lambda Conf this weekend and it was phenomenal.

Afraid I don't know anything about the current instructor.

Do note that because of what the courses do and do not cover, the Spring '13
cis194 is what's recommended for independent learners despite some errata that
have been noted.

I would really love a chance to talk to several people from UPenn's CS
department - a very impressive bunch.

------
voidz
I would really like to purchase this book - Haskell is fantastic - but I'm
afraid it's too expensive for me. But also, when I study, I want a real book
not an ebook. So I will have to skip this one, sadly enough. If it comes in
print I might reconsider.

~~~
coolsunglasses
By all means wait then! The ebook-only is because this is early access, we're
looking for people that want to send us feedback and help us with the book
without committing to a more laborious review process. It might also be worth
waiting in your case because we haven't released the majority of the content
yet. The early access should make sense for a wider audience when about ~50%
of the book is part of the current release.

We're determined to get a print run but we won't start preparing for print
until the book is done in January. For now we've been testing samples from
printers and figuring out costs. One problem is that a lot of places charge a
_lot_ for shipping internationally so we might need separate printers for US
and EU. Another problem is the book's length is going to make things
expensive, so it'll have to be a black & white book, with the color syntax
highlighting being ebook only. The cost estimates I've been getting for a
color print have been $100++ per unit.

We talk about the price a bit in the FAQ at:
[http://haskellbook.com/faq.html](http://haskellbook.com/faq.html)

Thanks for sharing your thoughts.

~~~
voidz
Thank you for answering. :-)

------
truncate
Any recommendation to get started with Haskell for a person who is pretty
comfortable with functional programming (Racket, OCaml)?

~~~
coolsunglasses
Guide as usual, [https://github.com/bitemyapp/learnhaskell#how-should-i-
learn...](https://github.com/bitemyapp/learnhaskell#how-should-i-learn-
haskell) (so, cis194 -> NICTA Course)

but you can skip the first four weeks. You can try skipping more, but I
suspect some backtracking will be required.

Also be aware that the rules are different for recursion when non-strictness
is involved. It doesn't necessarily matter if functions are tail recursive or
not.

