[Haskell-cafe] Somewhat random history question

Richard Kelsall r.kelsall at millstream.com
Sun Nov 11 09:41:59 EST 2007

Andrew Coppin wrote:
> "...if GHC is written in Haskell, how the heck did they compile GHC in 
> the first place?"

The paper "A History of Haskell: Being Lazy With Class" by Paul Hudak,
John Hughes, Simon Peyton Jones and Philip Wadler is a good read.


A snippet

"GHC was begun in January 1989 at the University of Glasgow, as soon
as the initial language design was fixed. The first version of GHC was
written in LML by Kevin Hammond, and was essentially a new front end to
the Chalmers LML compiler. This prototype started to work in June 1989,
just as Peyton Jones arrived in Glasgow to join the burgeoning
functional programming group there. The prototype compiler implemented
essentially all of Haskell 1.0 including views (later removed), type
classes, the deriving mechanism, the fullmodule system, and binary I/O
as well as both streams and continuations. It was reasonably robust
(with occasional spectacular failures), but the larger Haskell prelude
stressed the LML prelude mechanism quite badly, and the added complexity
of type classes meant the compiler was quite a lot bigger and slower
than the base LML compiler.
GHC proper was begun in the autumn of 1989, by a team consisting
initially of Cordelia Hall, Will Partain, and Peyton Jones. It was
designed from the ground up as a complete implementation of Haskell in
Haskell, bootstrapped via the prototype compiler. The only part that was
shared with the prototype was the parser, which at that stage was still
written in Yacc and C. The first beta release was on 1 April 1991 (the
date was no accident), but it was another 18 months before the first
full release (version 0.10) was made in December 1992."

More information about the Haskell-Cafe mailing list