
Just a quick comment on a couple of things Brian Strand writes:
Or is ghc/Haskell established enough that the existence of some Haskell compiler is taken for granted nowadays?
Ghc is not written in pure Haskell - it is written in Ghc Haskell, i.e. it uses many extensions and internal libraries not available in all other Haskell implementations. Thus, you really need ghc to bootstrap ghc.
Would it be unreasonable to include the unregisterised .hc files with a source distribution (or .hc files for "popular" platforms), so that a Haskell novice such as myself could do a "./configure && make && make install"? If configure detected no ghc, perhaps it could do the bootstrap automagically.
This is what nhc98 does - supplies platform independent .hc files for bootstrapping via gcc if no existing Haskell compiler is installed. However, nhc98 uses a bytecode VM, so it produces code that is 3x - 15x slower than ghc, (currently) lacks many of the lower-level libraries, and implements very few language extensions. Thus it has a smaller user base, and smaller maintainer base too (therefore not much ongoing development). Ideally, if ghc were implemented in something closer to Haskell'98, it would be possible to double-bootstrap up from gcc -> nhc98 -> ghc unregisterised -> ghc registerised, on almost any new platform. But the amount of work required to 98-ify ghc is considerable (there are 148 kLoC to check), and it is hard to say whether it would be worthwhile. Maybe someone fancies tackling it as a medium-size project? Regards, Malcolm