1 <sect1>Release notes for version~3-02---5/97
2 <label id="release-3-02">
5 Changes made since 3.01:
9 <item> After a prolonged rest in the bit bucket, the Specialiser is
10 now back on-line again! It has been completely rewritten and the
11 implementation is a great deal simpler than the version that came with
13 (ToDo: insert summary of capabilities.)
15 <item> The addition of a data type or an instance to a module A should
16 now mostly avoid the recompilation of modules that import A.
18 <item> More internal code cleanup and simplifications
20 <item> @showList@ and @Show@ instances for tuples now uses @","@ as
21 element separators rather than @", "@. Changed to make the strings
24 <item> Misc. bugfixes to
27 <item> When computing the Makefile dependencies, using either
28 <tt/ghc -M/ (preferred) or by invoking the <tt/mkdependHS/ script
29 directly, <tt/CPP/ will now by default not be run over the input
30 files. To have CPP wash your input files, use the command-line option
33 <item> Added a working specialiser.
35 <item> Added <tt/unsafeCoerce#/.
37 <item> Fixed compilation of real floating-point literals: they were
38 previously generated as applications of <tt/fromRational/, even when
41 <item> The object splitter had a bug in it that increased binary sizes
42 significantly on i386-unknown-linux and sparc-sun-solaris2. Now
45 <item> Bump some of the constants that affect unfolding agression:
46 performance is now better than 2.10, and binary sizes are smaller.
48 <item> Add NOINLINE pragma, and use it for unsafePerformIO and
49 friends. Remove PrelUnsafe and PrelUnsafeST, move the contents into
50 PrelIOBase and PrelST respectively. Add NOINLINE pragma to