Skip to content

Instantly share code, notes, and snippets.

@devth
Forked from bitemyapp/gist:8739525
Created January 31, 2014 18:46
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save devth/8739930 to your computer and use it in GitHub Desktop.
Save devth/8739930 to your computer and use it in GitHub Desktop.
I like LYAH as a reference and cheat-sheet but I found it a little slow for
learning Haskell.
Here's my recommended order for just learning Haskell:
http://yannesposito.com/Scratch/en/blog/Haskell-the-Hard-Way/ 80% completion
here is fine if you feel your attention waning, the next thing will address
hammering in things like functors and monads via typeclasses.
https://github.com/NICTA/course/ this will hammer in the lessons in a very
direct form by forcing you to confront the challenges and lessons learned by the
creators and community of Haskell itself. Doing the exercises here is critical
for being fluent.
Real World Haskell is available online. I recommend it as a reference only.
Concurrent with the course:
http://blog.tmorris.net/posts/20-intermediate-haskell-exercises/
If you want to follow up on the type and category theory:
http://www.cis.upenn.edu/~bcpierce/tapl/
http://en.wikibooks.org/wiki/Haskell/Category_theory
http://www.haskell.org/haskellwiki/Category_theory
Useful for understanding typeclasses in general but also some Hask-specific
category theory: http://www.haskell.org/haskellwiki/Typeclassopedia
Search engine (can search by type):
http://www.haskell.org/hoogle/?hoogle=%28a+-%3E+b%29+-%3E+%5ba%5d+-%3E+%5bb%5d
After you're comfortable with Haskell, strongly consider learning Lenses and
Prisms, even if just as a "user". You don't need to understand the underlying
category for it to be useful.
Seen here: http://hackage.haskell.org/package/lens
Follow Edward Kmett (author of lens, Haskell superhero) on twitter:
https://twitter.com/kmett
If you need JavaScript, you probably want Fay until GHCJS gets explored further.
https://github.com/faylang/fay/wiki I'm doing some work/exploration here.
Most of all, try not to sweat the stuff you don't understand immediately. Just
keep moving.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment