Release notes for version 5.00 (April 2001)User-visible compiler changesGHCi, the new interactive environment on top of GHC, has
been added ().New flag added ().The native code generator now supports Sparc in addition
to x86.We now make it clear which options can be placed in an
OPTIONS pragma. See . no longer implies
. is no more. and are no more.The concept of “packages” has been
generalised and extended. Packages may be installed or
removed from an existing GHC installation using the new
ghc-pkg tool. See .Initial unicode support: the Char
type is now 31 bits. We don't yet have support for unicode
I/O. now takes an optional numeric
argument indicating the level of verbosity (). has
been removed.Parallel list comprehensions added. See .Functional dependencies are now fully implemented.
Profiling: please use
{-# SCC ".." #-}
rather than _scc_ "...". The latter
will be phased out in due course.A new experimental optimisation, SpecConstr, is turned
on with -O2.Please report bugs using the SourceForge bug
tracker instead of
glasgow-haskell-bugs@haskell.org if
possible.Documentation changes: there's now a useful Flag
Reference section, see .Many, many, bugfixes.New experimental featuresA “front panel” for GHC-compiled programs
displays real-time graphs of memory behaviour in a GTK+
window. You need to recompile the RTS with front panel
support to use this.FFI changeshsc2hs added ().FFI libraries have been updated to the latest proposal
from the FFI task force. Too many changes to list here, see
the docs: .User-visible library changesputMVar now blocks if the
MVar is already full. The
PutFullMVar exception no longer exists.
A non-blocking version of putMVar,
tryPutMVar, has been added ().The Int and
Integer types now have instances of
Bits ().Package hssource has been added. It
contains a Haskell 98 abstract syntax, parser, lexer and pretty
printer. No documentation yet.The methods fromInt and
toInt, which used to be in class
Num but exported from module
Int, are no longer in class
Num. They're still available from module
Int, however.In most cases, there should be no benefit from using
fromInt instead of
fromIntegral, which is specialised for all
integral types.New modules: DiffArray (),
StorableArray (),
MonadList, MonadCont (no documentation yet).Build system changesThe WithGhcHc setting in
build.mk has been replaced by the
––with-ghc=ghc
option to configure. The new option
must be used if you intend to use
anything except “ghc” to
bootstrap GHC, in order that the build system can figure out
what version of GHC you're using.Source distributions are now made by doing make
distclean in a build tree, instead of requiring a
linked build tree.Internal changesMany internal compiler changes: too many to list
here.The old perl driver has been removed and replaced by a
driver in the compiler proper.We now use GMP 3 instead of GMP 2 for
arbitrary-precision integer support.Several libraries rewritten to use the FFI.