Good Haskell source to read and learn from [closed]
What are some open source programs that use Haskell and can be considered to be good quality modern Haskell? The larger the code base, the better.
I want to learn from their source code. I feel I'm past the point of learning from small code examples, which are often to esoteric and small-world. I want to see how code is structured, how monads interact when you have a lot of things going on (logging, I/O, configuration, etc.).
What I recommend.
Read code by people from different grad schools in the 1990s
- Oxford style
- Glasgow style or (this)
- Chalmers style (or this)
- York style
- Portland style or OGI style (or this)
- Utrecht style
- Yale style
- Special case: CMU/Elliott
Read code by the old masters certain people (incomplete list)
- Marlow; Paterson; Peyton Jones; Gill; Launchbury; Hughes; Wadler; Bird; Claessen; Jones; Tolmach; Sheard; Swiestra; Augustsson; Runciman; Wallace; Thompson; Hinze; Gibbons; Leijen; Hudak; Elliott; Finne; Chakravarty; and
- Anyone who has written a functional pearl.
Note that people like me, Coutts, Mitchell, O'Sullivan, Lynagh, etc. learned our Haskell style from these guys.
Read some applications
- Read the GHC base library source
- Read the xmonad source
XMonad is an open source tiling window manager, originally loosely modeled on dwm. There are a lot of extensions, of varying quality, but the core is compact and well organized.
-
Haskell: Functional Programming with Types
Joeri van Eekelen, et al. | Wikibooks Published in 2007, 290 pages
-
Learn You a Haskell for Great Good!
Miran Lipovaca | LearnYouaHaskell.com Published in 2010, 176 pages
-
Real World Haskell
B. O'Sullivan, J. Goerzen, D. Stewart | O'Reilly Media, Inc. Published in 2008, 710 pages
-
The Haskell Road to Logic, Maths and Programming
Kees Doets, Jan van Eijck | College Publications Published in 2004, 449 pages
Darcs is an open source, source code management system. It should give you a nice idea for Haskell.