[project @ 1996-01-08 20:28:12 by partain]
[ghc-hetmet.git] / ghc / docs / add_to_compiler / paper.verb
diff --git a/ghc/docs/add_to_compiler/paper.verb b/ghc/docs/add_to_compiler/paper.verb
new file mode 100644 (file)
index 0000000..39a82c6
--- /dev/null
@@ -0,0 +1,77 @@
+\documentstyle[11pt,../grasp,code]{article}
+%\documentstyle[12pt,springer-wcs,oldfontnames,code]{article}
+\setlength{\marginparwidth}{1.5cm}
+\setlength{\parskip}{0.25cm}
+\setlength{\parindent}{0cm}
+\renewcommand{\textfraction}{0.2}
+\renewcommand{\floatpagefraction}{0.7}
+%
+\newcommand{\freevars}[1]{fvs(#1)}
+%
+% to avoid src-location marginpars, comment in/out the out/in defns.
+%\newcommand{\srcloc}[1]{}
+%\newcommand{\onlyIfSrcLocs}[1]{}
+%
+\newcommand{\onlyIfSrcLocs}[1]{#1}
+%
+\begin{document}
+\title{How to Add an Optimisation Pass\\
+to the Glasgow Haskell compiler\\
+(two months before version~0.23)}
+\author{Will Partain, acting as AQUA Project scribe\\
+e-mail contact: partain@@dcs.glasgow.ac.uk}
+\renewcommand{\today}{October, 1994}
+\maketitle
+% temporarily....
+\tableofcontents
+%\clearpage
+\begin{abstract}
+A major purpose of the new Glasgow Haskell compiler (written in
+Haskell) is to be freely available in source form so that others can
+use it as ``root stock'' onto which they may graft their own wonderful
+bits.  This document is a field guide for the aspiring
+better-compiler grower, particularly one who wishes to add an
+optimisation pass.
+\end{abstract}
+
+\onlyIfSrcLocs{Throughout this paper, pointers to the relevant
+source-code are given in the margins.  This code is in the {\tt
+ghc/compiler/} part of the distribution; names ending in {\tt /} are
+directories.  We assume you already know Haskell.}
+
+% \input{state-of-play}
+
+\input{overview}
+
+\input{front-end}
+\input{back-end}
+
+\input{core-syntax}
+
+\input{howto-add}
+
+%************************************************************************
+%*                                                                     *
+\section{For further information}
+%*                                                                     *
+%************************************************************************
+
+Besides the documents listed in the References below, there are
+several internal compiler documents that come with the GHC
+distribution.\srcloc{ghc/docs/README}
+
+If you are hacking GHC, you should be on the @glasgow-haskell-users@
+mailing list.  Send mail to
+@glasgow-haskell-users-request@@dcs.glasgow.ac.uk@ to subscribe.
+You may wish to subscribe to our ``bugs channel'' (
+@glasgow-haskell-bugs-request@@dcs.glasgow.ac.uk@) as well, if you
+are a glutton for punishment.
+
+Further suggestions as to how we can make your job easier will be most
+appreciated.
+
+\bibliographystyle{wpplain}   % wpplain, wplong, wpannote, ...
+\bibliography{wp_abbrevs,comp}
+
+%\printindex
+\end{document}