[[project @ 2000-01-24 12:43:45 by rrt] rrt**20000124124345 Wrote 4.06 release notes and updated version numbers in the rest of the user guide. ] { addfile ./ghc/docs/users_guide/4-06-notes.sgml hunk ./ghc/docs/users_guide/4-06-notes.sgml 1 + +Release notes for version 4.06—1/00 + + + + + + + + +User visible changes + + + + + +Major library reorganisation. The libraries are now split into 8 +categories: + + + + +concurrent + + +Same as the old concurrent library + + + + + +data + + +Datatypes. Contains old FiniteMap +and Set modules, and Chris Okasaki's Edison +library. + + + + + +lang + + +contains most of the contents of +the old exts library + + + + + +net + + +networking-related libraries (Socket, SocketPrim, and +new URI library). + + + + + +num + + +numerical-related libraries (currently empty). + + + + + +posix + + +the old POSIX library + + + + + +text + + +text-processing related libraries (including Andy Gill's +HTML library) + + + + + +util + + +various miscellaneous libraries, including John Hughes' +and Koen Claessen's QuickCheck library. + + + + + + +See the accompanying libraries documentation for more details. + + + + + +Cleanup of concurrent I/O system. We now use non-blocking I/O on +all Handles, so that multiple threads can do I/O simultaneously. +We don't however do non-blocking I/O on stdout/stderr, +due to reports that some shells don't correctly restore +blocking mode on these file descriptors after running a program. + + + + + +Exception changes + + + + +raiseInThread can now raise exceptions in threads blocked on I/O or time delays. + + + + + +New functions in Exception + + +blockAsyncExceptions :: IO a -> IO a +unblockAsyncExceptions :: IO a -> IO a + + +used to control the delivery of asynchronous exceptions to +a thread (including those raised via raiseInThread). + + + + + +Asynchronous exceptions are now blocked by default inside +an exception handler. Use unblockAsyncExceptions to +restore the previous behaviour. + + + + + + + + + + +Add NetBSD/x86 support. + + + + + +Added support for foreign export dynamic. + + + + + + + + + + +Minor changes + + + + + +Build system cleanup—BIN_DIST=1 is now needed in build.mk (before building!) to build binary dists. + + + + + +New RTS option , which prints the current cost-centre +stack to stderr whenever an exception is raised (only for +profiling builds). + + + + + + + + + + +Not-quite-ready-yet, but in there nontheless + + + + + +SMP support + + + +Building way 's' on a system with pthreads (only tested on +Linux so far) will include support for running multiple +Haskell threads on several pthreads simultaneously. If +your system supports it, this will enable Haskell programs +to take advantage of multiprocessor SMP machines. + + + + + + +GranSim and GUM + + + +Initial ports of GranSim and GUM to GHC 4 are in there. Not quite +ready yet. + + + + + + +Profiling + + + +Heap profiling sort-of works. Only cost-centre heap +profiles are supported so far. + + + + + + + + + + + + + + hunk ./ghc/docs/users_guide/installing.sgml 588 -You need two chunks of software other than GHC itself: the Cygwin toolchain, and -Perl. Here's how to get and install them. + +You need two chunks of software other than GHC itself: the Cygwin toolchain, and Perl. Here's how to get and install them. + hunk ./ghc/docs/users_guide/installing.sgml 731 + hunk ./ghc/docs/users_guide/users_guide.sgml 4 - + hunk ./ghc/docs/users_guide/users_guide.sgml 23 -The Glasgow Haskell Compiler User's Guide, Version 4.04 +The Glasgow Haskell Compiler User's Guide, Version 4.06 }