X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=docs%2Fusers_guide%2F6.12.1-notes.xml;h=210adeb4be72ba6c61830d4d2a19547e3b06ebd1;hb=bfdd16ba0799b8e2b2895ebbae46a0e22792d2f4;hp=691863de7b44bdef0a986ec3918599b77cf23291;hpb=129e41ed3570684da268287b05c62ea1dbb240d8;p=ghc-hetmet.git diff --git a/docs/users_guide/6.12.1-notes.xml b/docs/users_guide/6.12.1-notes.xml index 691863d..210adeb 100644 --- a/docs/users_guide/6.12.1-notes.xml +++ b/docs/users_guide/6.12.1-notes.xml @@ -169,8 +169,9 @@ data instance T [a] where The -#include flag and INCLUDE pragma are now deprecated and - ignored. GHC now generates its own C prototypes, rather than - relying on C prototypes. + ignored. Since version 6.10.1, GHC has generated its own C + prototypes for foreign calls, rather than relying on + prototypes from C header files. @@ -184,7 +185,8 @@ data instance T [a] where There is a new FFI calling convention called - prim, which allows calling C-- function. + prim, which allows calling C-- functions + (see ). Most users are not expected to need this. @@ -252,6 +254,10 @@ data instance T [a] where Runtime system + + The following options are all described in + . + @@ -263,31 +269,34 @@ data instance T [a] where - The new flag +RTS -q1 disables the parallel - garbage collector. + The parallel GC now uses the same threads as the mutator, + with the consequence that you can no longer select a + different number of threads to use for GC. + The RTS + option has been removed, except that is + still accepted for backwards compatibility. - - The new flag - +RTS -qgn - sets the minimum generation for which parallel garbage - collection is used. Defaults to 1. + +RTS -qggen sets + the minimum generation for which parallel garbage collection + is used. Defaults to 1. The flag -qg on + its own disables parallel GC. - The new flag +RTS -qa - uses the OS to set thread affinity. + The new flag +RTS -qbgen + controls load balancing in the parallel GC. - The new flag +RTS -qb - disables load balancing in the parallel garbage collector. + The new flag +RTS -qa + uses the OS to set thread affinity (experimental). @@ -297,7 +306,7 @@ data instance T [a] where the new flag +RTS -l generates prog.eventlog files, which tools such as ThreadScope can use to show the - behaviour of your program. The + behaviour of your program (see ). The +RTS -D>x output is also sent to the eventlog file if this option is enabled. The +RTS -v flag sends eventlog data to @@ -343,7 +352,7 @@ SPARKS: 1430 (2 converted, 1427 pruned) In order to generate the parsers, happy >= 1.16 is now required. The parsers are pre-generated in the source tarball, - so most users will not need happy. + so most users will not need Happy. @@ -488,6 +497,32 @@ Loaded: Prelude and :set show can now be tab completed. + + + + We inherit some benefits from an upgraded version of haskeline: + + + + + A multitude of new emacs and vi commands. + + + + + + New preference 'historyDuplicates' to prevent storage + of duplicate lines. + + + + + + Support PageUp and PageDown keys. + + + + @@ -545,8 +580,11 @@ deriveMyStuff ''T Packages can now be identified by a "package ID", which is based on a hash of the ABIs. The new flag - -package-id allows packages to be selected - by this identifier. + -package-id allows packages to be + selected by this identifier (see ). Package IDs enable GHC to detect potential + incompatibilities between packages and broken dependencies + much more accurately than before. @@ -578,6 +616,31 @@ ghc --abi-hash M1 M2 ... Rather than being a single package.conf file, package databases now consist of a directory containing one file per package, and a binary cache of the information. + GHC should be much faster to start up when the package + database grows large. + + + + + + There is a new command ghc-pkg init to + create a package database. + + + + + + There is a new command ghc-pkg dot to + generate a GraphViz graph of the dependencies between + installed packages. + + + + + + There is a new command ghc-pkg recache to + update the package database cache should it become out of + date, or for registering packages manually.