1 <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">
4 <META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=ISO-8859-1">
5 <title>The GHC Commentary - The Beast Explained</title>
8 <body BGCOLOR="FFFFFF">
9 <h1>The Glasgow Haskell Compiler (GHC) Commentary [v0.11]</h1>
11 <!-- Contributors: Whoever makes substantial additions or changes to the
12 document, please add your name and keep the order alphabetic. Moreover,
13 please bump the version number for any substantial modification that you
16 <strong>Manuel M. T. Chakravarty</strong><br>
17 <strong>Simon Marlow</strong><br>
18 <strong>Simon Peyton Jones</strong><br>
19 <strong>Julian Seward</strong><br>
20 <strong>Reuben Thomas</strong><br>
23 This document started as a collection of notes describing what <a
24 href="mailto:chak@cse.unsw.edu.au">I</a> learnt when poking around in
25 the <a href="http://haskell.org/ghc/">GHC</a> sources. During the
26 <i>Haskell Implementers Workshop</i> in January 2001 it was decided to
27 put the commentary into
28 <a href="http://cvs.haskell.org/cgi-bin/cvsweb.cgi/fptools/">GHC's CVS
30 to allow the whole developer community to add their wizardly insight to
33 <strong>The document is still far from being complete - help it
36 <h2>Before the Show Begins</h2>
39 <li><a href="feedback.html">Feedback</a>
40 <li><a href="others.html">Other Sources of Wisdom</a>
46 <li><a href="genesis/genesis.html">Outline of the Genesis</a>
47 <li><a href="genesis/makefiles.html">Mindboggling Makefiles</a>
50 <h2>The Beast Dissected</h2>
53 <li><a href="the-beast/driver.html">The Glorious Driver</a>
54 <li><a href="the-beast/prelude.html">Primitives and the Prelude</a>
55 <li><a href="the-beast/syntax.html">Just Syntax</a>
56 <li><a href="the-beast/basicTypes.html">The Basics</a>
57 <li><a href="the-beast/modules.html">Modules, ModuleNames and
59 <li><a href="the-beast/vars.html">The Real Story about Variables, Ids,
60 TyVars, and the like</a>
61 <li><a href="the-beast/renamer.html">The Glorious Renamer</a>
62 <li><a href="the-beast/typecheck.html">Checking Types</a>
63 <li><a href="the-beast/desugar.html">Sugar Free: From Haskell To Core</a>
64 <li><a href="the-beast/simplifier.html">The Mighty Simplifier</a>
65 <li><a href="the-beast/mangler.html">The Evil Mangler</a>
66 <li><a href="the-beast/alien.html">Alien Functions</a>
67 <li><a href="the-beast/ncg.html">The Native Code Generator</a>
68 <li><a href="the-beast/ghci.html">GHCi</a>
71 <h2>RTS & Libraries</h2>
74 <li><a href="rts-libs/stgc.html">Spineless Tagless C</a>
75 <li><a href="rts-libs/primitives.html">Primitives</a>
76 <li><a href="rts-libs/prelfound.html">Prelude Foundations</a>
77 <li><a href="rts-libs/prelude.html">Cunning Prelude Code</a>
78 <li><a href="rts-libs/foreignptr.html">On why we have
79 <tt>ForeignPtr</tt></a>
82 <h2>Extensions, or Making a Complicated System More Complicated</h2>
85 <li><a href="exts/ndp.html">Parallel Arrays</a>
90 The online master copy of the Commentary is at
92 <a href="http://www.cse.unsw.edu.au/~chak/haskell/ghc/comm/">http://www.cse.unsw.edu.au/~chak/haskell/ghc/comm/</a>
95 This online version is updated
97 href="http://cvs.haskell.org/cgi-bin/cvsweb.cgi/fptools/ghc/docs/comm/">from
103 Last modified: Mon Feb 11 20:18:35 EST 2002