[project @ 1997-06-06 22:19:27 by sof]
[ghc-hetmet.git] / ghc / docs / users_guide / 2-03-notes.lit
1 GHC 2.03 is a minor upgrade of GHC 2.02.  It differs in the following
2 ways:
3
4 \begin{itemize}
5 \item
6     A slew of small bugs are fixed.  You can find the complete list
7     at:
8
9 \begin{verbatim}
10 http://www.cse.ogi.edu/~simonpj/ghc-bugs.html
11 \end{verbatim}
12
13     One bug remains un-fixes, namely the crash when there's an empty 
14     comment at the end of file.  It's wierd!
15
16 \item
17     Last-minute language changes have been implemented (minor changes
18     to the libraries, and to module export/hiding scope rules)
19
20 \item
21     It is only available as a source distribution.  If you want to
22     use it you'll have to build it from source.  Nowadays this is
23     a well-documented process (see the build and installation guide, but
24     note that this release is still not self-booting, you still need
25     to have The Good Old Compiler (0.29) at your disposal).
26 \end{itemize}
27
28 None of the bugs in GHC 2.02 are show-stoppers, so you'll only want
29 to upgrade if you are a build-from-source junkie and the bugs are 
30 irritating you.
31
32 Apart from bug-fixes, which are itemized elsewhere, 
33 the exact language and standard-library changes are as follows:
34 \begin{itemize}
35 \item
36 A hiding clause hides the unqualified name, but not the qualified name.
37 \item 
38 There's a new @Numeric@ library, containing mostly mildly marginal
39 code for showing and reading numbers.  Parts of its exports used to be
40 exported by @Prelude@, but now you'll have to import them explicitly.
41 It also defines some functions that weren't provided before; have a
42 look in the Haskell library report for details of complete interface.
43 \item
44 The following extra functions are exported from @IO@: 
45 @try@, @bracket@, @bracket_@, @hGetLine@, @hWaitForInput@.
46 \end{itemize}
47
48 In addition, we've made following changes to GHC libraries/GHC's
49 implementation of the Haskell standard prelude:
50
51 \begin{itemize}
52 \item The function @fromRational__@, exported from @PrelNum@, is now called @fromRat@.
53 (And it's exported by @Numeric@.)
54 \item
55 Documentation for the Glasgow specific interfaces plus the system
56 libraries have been re-instated. Posix library documentation included also.
57 \item
58 @maybe@ is now exported from Prelude, as it should have been in 2.02.
59 \item
60 Equality on @IO.Handle@ is now defined as specified by the library
61 report.
62 \item
63 @Ix.rangeSize@ returns \tr{0} on an empty range;previously it failed.
64 \item
65 The new interface @GlaExts@ which is meant to be the gateway to the
66 various Glasgow extensions has now been documented.
67 \item
68 @GlaExts@ now exports the representation of @Char@.
69 \item
70 The mutable variable interface, @MutVar@, has also been documented,
71 together with @ByteArray@, @MutableArray@ and @Foreign@.
72 \item
73 Added documentation on how to compile mutually recursive modules with
74 2.03.
75 \end{itemize}