1 \documentstyle[11pt,../grasp,code]{article}
2 %\documentstyle[12pt,springer-wcs,oldfontnames,code]{article}
3 \setlength{\marginparwidth}{1.5cm}
4 \setlength{\parskip}{0.25cm}
5 \setlength{\parindent}{0cm}
6 \renewcommand{\textfraction}{0.2}
7 \renewcommand{\floatpagefraction}{0.7}
9 \newcommand{\freevars}[1]{fvs(#1)}
11 % to avoid src-location marginpars, comment in/out the out/in defns.
12 %\newcommand{\srcloc}[1]{}
13 %\newcommand{\onlyIfSrcLocs}[1]{}
15 \newcommand{\onlyIfSrcLocs}[1]{#1}
18 \title{How to Add an Optimisation Pass\\
19 to the Glasgow Haskell compiler\\
20 (two months before version~0.23)}
21 \author{Will Partain, acting as AQUA Project scribe\\
22 e-mail contact: partain@@dcs.glasgow.ac.uk}
23 \renewcommand{\today}{October, 1994}
29 A major purpose of the new Glasgow Haskell compiler (written in
30 Haskell) is to be freely available in source form so that others can
31 use it as ``root stock'' onto which they may graft their own wonderful
32 bits. This document is a field guide for the aspiring
33 better-compiler grower, particularly one who wishes to add an
37 \onlyIfSrcLocs{Throughout this paper, pointers to the relevant
38 source-code are given in the margins. This code is in the {\tt
39 ghc/compiler/} part of the distribution; names ending in {\tt /} are
40 directories. We assume you already know Haskell.}
42 % \input{state-of-play}
53 %************************************************************************
55 \section{For further information}
57 %************************************************************************
59 Besides the documents listed in the References below, there are
60 several internal compiler documents that come with the GHC
61 distribution.\srcloc{ghc/docs/README}
63 If you are hacking GHC, you should be on the @glasgow-haskell-users@
64 mailing list. Send mail to
65 @glasgow-haskell-users-request@@dcs.glasgow.ac.uk@ to subscribe.
66 You may wish to subscribe to our ``bugs channel'' (
67 @glasgow-haskell-bugs-request@@dcs.glasgow.ac.uk@) as well, if you
68 are a glutton for punishment.
70 Further suggestions as to how we can make your job easier will be most
73 \bibliographystyle{wpplain} % wpplain, wplong, wpannote, ...
74 \bibliography{wp_abbrevs,comp}