X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=docs%2Fusers_guide%2F6.6-notes.xml;h=bd4561960ef85238938d87d6f3215032b03f6874;hb=aedb94f5f220b5e442b23ecc445fd38c8d9b6ba0;hp=9b215b0f5531577fa62bc0182e10137dff29529c;hpb=28314aa42433b174156bb870d08af745662b99bb;p=ghc-hetmet.git diff --git a/docs/users_guide/6.6-notes.xml b/docs/users_guide/6.6-notes.xml index 9b215b0..bd45619 100644 --- a/docs/users_guide/6.6-notes.xml +++ b/docs/users_guide/6.6-notes.xml @@ -11,24 +11,24 @@ when you compile with , you now get an RTS flag that allows you to specify the number of OS threads that GHC should use. Defaults to 1. - See and and . - GHC's modules are now also bundled into a - ghc package, allowing programs to make use - of GHC as a library. The interface has not yet been properly - designed, so is subject to change. + GHC now handles impredicative polymorphism; see . - GHC now handles impredicative polymorphism and there are - changes to the way scoped type variables work; see - Simon's e-mail - for more details. + There are significant changes to the way scoped type variables work, + and some programs that used to compile may no longer do so. + The new story is documented in . + ( Simon's e-mail + gives some background, but the user manual should be complete (tell + us if not), and + certainly takes precedence if there is any conflict.) @@ -41,6 +41,7 @@ f (x, y) | x `seq` False = undefined | otherwise = [x,y] + See for more details. @@ -61,6 +62,11 @@ ignored in comments, so ASCII code with comments in, for example, Latin-1 will also work. + + + A way to have Latin-1 source files pre-processed by GHC is + described in . + @@ -96,6 +102,8 @@ performance when a lot of memory is taken up by STArrays, IOArrays, STRefs or IORefs. + For more details see + trac bug #650. @@ -163,7 +171,6 @@ , , , - , , , , @@ -184,6 +191,16 @@ + The + + option is now called + . + (the old name is still accepted for backwards compatibility, + but will be removed in the future). + + + + The flag has been removed. @@ -250,8 +267,14 @@ MyIO t rather than just IO t. + See + GHC's mechansim for deriving user-defined classes + for newtypes has been further generalised, to multi-parameter type + classes and higher-kinded types. See . + By default, pattern bindings in GHC are now monomorphic. @@ -281,9 +304,28 @@ - It is now possible, with the -I RTS flag, - to control the amount of idle time that happens before a major - GC is performed. + Linear implicit parameters have been scheduled for removal for some + time. In 6.6 we've removed them from the user manual, and they may + well disappear from the compiler itself in 6.6.1. + + + + + If the program is idle for a certain amount of time then GHC + will now take the opportunity to do a major garbage collection. + The amount of idle time that is required before that happens + is controlled by the new -I RTS flag. + There is more detail in . + + + + + It is now possible to control the frequency that the RTS clock + ticks at with the new -V RTS flag. This is + normally handled automatically by other flags, but this flag + is needed if you want to increase the resolution of the time + profiler. + For more details see . @@ -294,8 +336,31 @@ - The flag can now be used with - , and hence can be used by cabal. + The flag, which when used to compile + libraries means executables using the library will be smaller, + can now be used with and hence + can be used by cabal. + See for more information. + + + + + Template Haskell used to have limited support for type signatures in + patterns, but since that design is in flux for Haskell (let alone + Template Haskell), we've removed type signatures in patterns from + Template Haskell. + + + + + GHC now supports postfix operators, as a simple generalisation of + left sections (). + + + + + Parallel arrays, as enabled by -fparr, no + longer work. They'll be coming back shortly, in full glory. @@ -327,6 +392,23 @@ See for more information. + + + GHCi now has an :edit command which pops + up an editor on the most recently loaded file, or a + specified file. See for + more information. + + + + + GHCi now invokes print by default on the + result of IO actions and bindings at the prompt. This is + occasionally not what you want, so it can be disabled (at + least for bindings) with + :set -fno-print-bind-result. See . + @@ -352,7 +434,7 @@ - Version number 2.0 (was 1.0). + Version number 2.1 (was 1.0). @@ -447,13 +529,16 @@ inline which, provided the RHS is visible to the compiler, forcibly inlines its argument. Otherwise, it acts like id. + For more details, see . GHC.Exts now provides a function - lazy which forces GHC to think that its - argument is lazy in its first argument. + lazy, where lazy f + behaves like f, except GHC is forced + to believe that it is lazy in its first argument. + For more details, see . @@ -740,7 +825,7 @@ - Version number 1.1.5 (was 1.1.4). + Version number 1.1.6 (was 1.1.4). @@ -763,24 +848,6 @@ - Added cabal-setup, a user interface to - building and installing Cabal packages. - - - - - Added cabal-install, an automated - installer for cabal packages. - - - - - There is now a Network.Hackage hierarchy - for code needed by hackage, the package server. - - - - There are now modules Distribution.Simple.compiler for each of GHC, NHC, @@ -938,7 +1005,7 @@ - Version number 2.0 (was 1.0). + Version number 2.1 (was 1.0). @@ -1044,7 +1111,7 @@ - Version number 2.0 (was 1.0). + Version number 2.1 (was 1.0). @@ -1199,6 +1266,14 @@ network package. + + + The Network.CGI.Compat module provides + a similar interface to the old Network.CGI + module, but it uses Text.XHtml rather than + Text.Html. + + @@ -1592,6 +1667,24 @@ + GHC As A Library + + Version number 6.6. + + + The internal modules of GHC are now available as a library, package + name ghc. + The interface has not been designed with use by other programs + in mind, so expect the API to vary radically in future + releases. + + + An introduction to using the library can be found + on the wiki. + + + + Internal changes