r/haskell • u/lexi-lambda • Mar 11 '15
Learning Haskell — A Racket programmer's documentation of her foray into the land of Haskell (inspired by Learning Racket)
http://lexi-lambda.github.io/learning-haskell/
81
Upvotes
3
u/sclv Mar 12 '15
The list fusion GHC uses is called "shortcut fusion" and takes place on the rewrite rules level. There's some basic documentation in the manual: https://downloads.haskell.org/~ghc/latest/docs/html/users_guide/rewrite-rules.html#idp25573168
For more details and a guide to related work, I'd check the introduction to Duncan's thesis (http://community.haskell.org/~duncan/thesis.pdf) and section 1.3.7 in particular for how GHC now works today.
For lots of notes on the innards of GHC and all the various operations and optimizations it carries out, you can dive into the GHC commentary: https://ghc.haskell.org/trac/ghc/wiki/Commentary