hbc

Patrik Jansson patrikj@cs.chalmers.se
Wed, 20 Jun 2001 10:06:24 +0200 (MET DST)


On Tue, 19 Jun 2001, Andre W B Furtado wrote:
> It is still possible to make hbc reach Haskell 98?

In short: Hbc is not quite dead yet, and there is a H98 version.

In detail:

[Note: I'm no expert in compiler writing, nor do I support hbc. I just
 happen to work at Chalmers in the office between Lennart Augustsson's
 (main architect and implementor of hbc, now in industry) and Thomas
 Hallgren's (still actively using and sometimes hacking hbc).
]

The latest unofficial release is a Haskell 98 version of hbc, from 1999.
Below are some links.

There has been no official release for the last few years and the support
level is pretty low, but the compiler exists and can be used.
Unfortunately the web-pages and the documentation has not been updated the
last few years!

One notable feature in hbc still missing in ghc is Unicode support (hbc
has supported Unicode from early on). I hope ghc will follow up the recent
change to Unicode-sized Chars with some library support soon.

Many years ago a big benefit of hbc was its interactive variant hbi, only
very recently implemented by ghc, but hbi is even less supported than hbc
and I have only tried it once or twice. [I'd be very happy to hear someone
more involved in developing hbc and hbi come forward and disprove this
claim by providing a new release.]

When it comes to speed I am pretty sure ghc produces faster code (it used
to be different, but that is a while ago) and I think hbc compiles faster
nowadays "only" because it does less work in producing good code.

/Patrik Jansson

Versions of hbc98:

http://www.cs.chalmers.se/pub/users/hallgren/Alfa/Haskell/

Binary distributions of the latest unofficial release: 0.9999.5b

http://www.cs.chalmers.se/pub/users/hallgren/Alfa/Haskell/hbc-0.9999.5b.bin-i386-linux-libcv6.tar.gz
http://www.cs.chalmers.se/pub/users/hallgren/Alfa/Haskell/hbc-0.9999.5b.bin-i386-linux-redhat-6.tar.gz
http://www.cs.chalmers.se/pub/users/hallgren/Alfa/Haskell/hbc-0.9999.5b.bin-i386-netbsdELF.tar.gz

Source snapshot:

http://www.cs.chalmers.se/pub/users/hallgren/Alfa/Haskell/snapshot/1999-09-10/