[project @ 1998-01-30 17:01:49 by simonm]
[ghc-hetmet.git] / ghc / docs / users_guide / 2-02-notes.vsgml
similarity index 78%
rename from ghc/docs/users_guide/2-02-notes.lit
rename to ghc/docs/users_guide/2-02-notes.vsgml
index 773bb5b..fbefa46 100644 (file)
@@ -1,6 +1,10 @@
+<sect1>Release notes for version~2.02---3/97
+<label id="release-2-02">
+<p>
+
 Release~2.02 is the first release of Glasgow Haskell for Haskell~1.4.
 
-The announcement for this release is distributed as \tr{ANNOUNCE-2.02}
+The announcement for this release is distributed as @ANNOUNCE-2.02@
 in the top-level directory.  It contains very important caveats about
 2.02, which we do not repeat here!
 
@@ -10,13 +14,17 @@ Installation Guide.  Since 2.01, we've added support for Win32
 
 %************************************************************************
 %*                                                                      *
-\subsection[2-02-config]{New configuration things in 2.02}
+<sect1>New configuration things in 2.02
+<label id="2-02-config">
+<p>
 %*                                                                      *
 %************************************************************************
 
 %************************************************************************
 %*                                                                      *
-\subsection[2-02-user-visible]{User-visible changes in 2.02, including incompatibilities}
+<sect1>User-visible changes in 2.02, including incompatibilities
+<label id="2-02-user-visible">
+<p>
 %*                                                                      *
 %************************************************************************
 
@@ -27,96 +35,108 @@ user-visible changes are described there (and not repeated here).
 
 %************************************************************************
 %*                                                                      *
-\subsection[2-02-options]{New or changed GHC command-line options}
+<sect1>New or changed GHC command-line options
+<label id="2-02-options">
+<p>
 %*                                                                      *
 %************************************************************************
 
-\begin{itemize}
-\item GHC now warns of possibly-incomplete patterns in case expressions
+<itemize>
+<item> GHC now warns of possibly-incomplete patterns in case expressions
 and function bindings.  You can suppress these warnings with @-fno-warn-incomplete-patterns@.
 
 GHC also warns of completely overlapped patterns.  You can't switch this off.
 
-\item GHC can warn of shadowed names, though it does not do so by default.  
+<item> GHC can warn of shadowed names, though it does not do so by default.  
 Just occasionally this shows up 
 an otherwise hard-to-find bug.  To warn of shadowed names use @-fwarn-name-shadowing@
 
-\item You can now generate `make' dependencies via the compiler
+<item> You can now generate `make' dependencies via the compiler
 driver, use the option @-M@ together with the list source files to compute
 the dependencies for. By default, the dependencies will be appended to
-the file \tr{Makefile} in the current directory.
+the file @Makefile@ in the current directory.
 
-\item For hackers, the flag @-dshow-rn-trace@ shows what the renamer is up to.
+<item> For hackers, the flag @-dshow-rn-trace@ shows what the renamer is up to.
 Sit back and marvel.
 
-\end{itemize}
+</itemize>
 
 
 %************************************************************************
 %*                                                                      *
-\subsection[2-02-new-in-compiler]{New in the compiler proper}
+<sect1>New in the compiler proper
+<label id="2-02-new-in-compiler">
+<p>
 %*                                                                      *
 %************************************************************************
 
-\begin{itemize}
-\item
+<itemize>
+<item>
 Completely new ``make-world'' system, properly documented (at last) in the
 installation guide.  No Jmakefiles; but you *need* Gnu make
 (gmake). The more recent the better (v 3.70+).
 
-\item
+<item>
 The ``renamer''---the part of the compiler that implements
 the Haskell module system---has been completely rewritten, again.
 
 The format of interface files has changed significantly.  Interface files
 generated by 2.01 will not work with 2.02.
 
-\item
+<item>
 Even less special pleading for the Prelude than in 2.01.  If you wanted
 to write your own Prelude and drop it in, you would have
 a really good chance now.
-\end{itemize}
+</itemize>
 
 
 %************************************************************************
 %*                                                                      *
-\subsection[2-02-new-in-libraries]{In the libraries}
+<sect1>In the libraries
+<label id="2-02-new-in-libraries">
+<p>
 %*                                                                      *
 %************************************************************************
 
-The libraries have been completely reorganised.  There's a description in
-\sectionref{syslibs}.
+The libraries have been completely reorganised.  There's a description
+in Section <ref name="System Libraries" id="syslibs">.
 
 
 %************************************************************************
 %*                                                                      *
-\subsection[2-02-new-in-syslibs]{In ``hslibs'' libraries}
+<sect1>In ``hslibs'' libraries
+<label id="2-02-new-in-syslibs">
+<p>
 %*                                                                      *
 %************************************************************************
 
 
 %************************************************************************
 %*                                                                      *
-\subsection[2-02-new-in-rts]{In the runtime system}
+<sect1>In the runtime system
+<label id="2-02-new-in-rts">
+<p>
 %*                                                                      *
 %************************************************************************
 
-\begin{itemize}
-\item @ForeignObjs@ are properly deallocated when execution halts, as well
+<itemize>
+<item> @ForeignObjs@ are properly deallocated when execution halts, as well
 as when the garbage collector spots the @ForeignObj@ as being unreferenced.
 This is important if you are using a @ForeignObj@ to refer to
 a @COM@ object or other remote resource. You want that resource to be relased
 when the program terminates.
 
-\item Files handles in the IO prelude are implemented using
+<item> Files handles in the IO prelude are implemented using
 @ForeignObjs@, and closed when the file handle is unreferenced.  This
 means that if you open zillions of files then just letting go of the
 file handle is enough to close it. 
-\end{itemize}
+</itemize>
 
 %************************************************************************
 %*                                                                      *
-\subsection[2-02-new-elsewhere]{Other new stuff}
+<sect1>Other new stuff
+<label id="2-02-new-elsewhere">
+<p>
 %*                                                                      *
 %************************************************************************
 
@@ -126,32 +146,34 @@ interface generator for Haskell. More details elsewhere...
 
 %************************************************************************
 %*                                                                      *
-\subsection[2-02-troublespots]{Known troublespots}
+<sect1>Known troublespots
+<label id="2-02-troublespots">
+<p>
 %*                                                                      *
 %************************************************************************
 
 The 2.02 compiler has the following known deficiencies:
 
-\begin{description}
-\item[native code generator, x86:]
+<descrip>
+<tag>native code generator, x86:</tag>
 
 The native code generator for x86 platforms is by default switched
 off, as the code the compiler produces with it enabled was discovered
 just before releaseing to be wonky. Rather than delay the release
-further, GHC on x86 platforms rely on \tr{GCC} as their
+further, GHC on x86 platforms rely on @GCC@ as their
 backend for now. Hopefully fixed soon.
 
-\item[Simplifier looping:]
+<tag>Simplifier looping:</tag>
 
 The simplifier(Glasgow-speak for optimiser) has been observed to get
 into a loop in one or two cases. If you should observe this, please
 report it as a bug - the work around is to turn off optimisation.
 
-\item[Undefined @*_vap_info@ symbols:]
+<tag>Undefined @*_vap_info@ symbols:</tag>
 
 If the linker complains about some undefined @*_vap_info@ symbols when
 linking 2.02 compiled programs (very unlikely) - fix this by compiling
 the module where the references are coming from with
 @-fno-lambda-lifting@.
 
-\end{description}
+</descrip>