Thomas Davie wrote:
I haven't played around with nhc98 yet, but I was intrigued by its small size and its (modestly-sized and simple) bytecoded implementation. Should I now be more interested in Yhc instead? ;-)
As far as the YHC team is concerned, yes... As far as the nhc team is... I'm not sure, perhaps Malcolm or Colin would be kind enough to tell us.
I think the implied division here is an artificial one. Tom Shackell's work on a new back-end for nhc98 is a welcome development and looks very promising. It is a good idea to pursue a more portable and compact bytecode. Also, the back-end of the currently distributed nhc98 has hosted several experiments in memory management, profiling, tracing etc so stripping back to a more minimal run-time system is also attractive. However, the new back-end is still under development. It does not yet support everything that the current nhc98 back-end does. So in the short term, I'd still recommend application developers to use the standard nhc98 distribution if it runs on their computing platform. In the medium-to-long term, it makes little sense to dissipate the efforts of a small number of York Haskell people by trying to maintain two distinct compilers with a common root. When the new back-end is tried and tested, with the addition of profiling and tracing*, I hope it will become part of the nhc98 mainstream. As for the name: Malcolm has been maintaining and distributing first nhc, then nhc98, from York for several years, and by now it has a lot of York-written code in it; but we kept the name nhc by way of acknowledgement to Niklas R\"{o}jemo, the original author, who brought nhc to York when he was a post-doc here in the mid '90s. Colin R (and Malcolm W) ----------- * Part of Tom's motivation for the new back-end is a nice implementation of his Hat G-machine for tracing.