ANNOUNCE: nhc98 version 1.02



About this list Date view Thread view Subject view Author view

malcolm-nhc@cs.york.ac.uk
Wed, 14 Feb 2001 13:27:48 +0000


We are pleased to announce the new release 1.02 of nhc98, a compiler for Haskell'98, written in Haskell'98. http://www.cs.york.ac.uk/fp/nhc98/ It is available as a source package (which can be built via ghc, hbc, an existing nhc98 installation, or simply with a C compiler if you don't already have a Haskell compiler installed). Binary packages are also currently available for ix86-Linux and sparc-solaris2. Binary packages for other architectures can be added to the list if users contribute them. What's new ---------- This is an interim release, mainly fixing bugs in nhc98-1.00. The tracing and debugging tool, Hat, is about to undergo some significant changes, so release 1.02 is a stable snapshot before we start to break too many things! Amongst the many bugfixes, notable ones are as follows: * Fixed a space-leak in the compiler. Compilation now requires approximately half the previous maximum heap, and as a result, compile times are 5-10% faster. * The raw speed of input and output for compiled programs is now much faster, although you will probably only notice a difference if your program is severely I/O-bound. * Local infix declarations now work correctly. * `newtype T a = T a' now works correctly. * @-pattern-bindings are fixed. This means that Happy-generated parsers now compile correctly. * We now accept {-# pragmas #-} in any source position, and understand LINE pragmas. Recent bugfixes and new features in Hat include: * When a traced program is interrupted or terminates with an error, you get a virtual stack trace of the computation "for free", without having to start up a browser. * Foreign imports (via the new common primitive FFI) with an I/O result type are now also traced (previously only pure foreign functions were traced). * Interface and object files for tracing now have distinct file suffixes: .T.hi and .T.o. This improves matters enormously when switching between normal and tracing versions of a program. It also fixes some dependency bugs when building the tracing version of the compiler. Both the compiler and hmake have knowledge of the new suffixes. * Tracing versions of the following libraries have been added: IO, Array, FFI, IOExtras. (Still missing: Directory, System, Time, Locale, CPUTime, Random.) Regards, Malcolm


About this list Date view Thread view Subject view Author view