- En Español
- En Français
- In Italiano
- Em Português
- În Română
- Bahasa Indonesia
IRC web client here.
The haskell mailing lists.
the community guidelines to understand the conduct that is expected in the IRC channel. You'll get a warning if you're not obviously trolling, but be aware the channel is exclusively for those learning or teaching Haskell.
Stack to get GHC installed and to build your projects.
If you don't know anything about Stack and would like an overview, check out this comprehensive Stack video tutorial.
@dmvianna wanted me to let you know that these are just the free recommended resources. If you're willing to check out a book, we heartily recommend our own Haskell Book! That book replaces all of the primary resources recommended here.
Do this first, this is the primary way we recommend being introduced to Haskell.Available online.
Brent Yorgey's course is the best I've found so far. This course is valuable as it will not only equip you to write basic Haskell but also help you to understand parser combinators.
The only reason you shouldn't start with cis194 is if you are not a programmer or are an inexperienced one. If that's the case, start with Thompson's book and transition to cis194.
This is the course we recommend doing after Yorgey's cis194 courseAvailable on github here.
This will reinforce and give you experience directly implementing the abstractions introduced in cis194, this is practice which is critical to becoming comfortable with everyday uses of Functor/Applicative/Monad/etc. in Haskell. Doing cis194 and then the NICTA course represents the core recommendation of my guide and is how we teach everyone Haskell.
Provides more material on intermediate topicscs240h is available online.
This is Bryan O'Sullivan's online course from the class he teaches at Stanford. If you don't know who he is, take a gander at half the libraries any Haskell application ends up needing and his name is on it. Of particular note if you've already done the Yorgey course are the modules on phantom types, information flow control, language extensions, concurrency, pipes, and lenses.
the topic listing so you have ideas on where to begin. This includes things like intermediate/advanced concepts and subjects like tooling and text editors.
Hosted in this repository here.These are actually pretty important and helpful. Look here for deep dives on a variety of topics.