diff options
author | Ben Gamari <ben@smart-cactus.org> | 2021-04-22 13:12:56 -0400 |
---|---|---|
committer | Ben Gamari <ben@smart-cactus.org> | 2021-04-22 13:13:26 -0400 |
commit | 64400812a0a7d134849430bf77de806101c6b2c7 (patch) | |
tree | f969ae3bfd07bff8439dc7253de4e29920422ee3 | |
parent | cc97ab6d1a46e2e0a62cc0c7c7428f0d39fde2b7 (diff) | |
download | haskell-wip/T19446.tar.gz |
users guide: Various other cleanupswip/T19446
-rw-r--r-- | docs/users_guide/9.0.1-notes.rst | 35 | ||||
-rw-r--r-- | docs/users_guide/using-optimisation.rst | 1 |
2 files changed, 26 insertions, 10 deletions
diff --git a/docs/users_guide/9.0.1-notes.rst b/docs/users_guide/9.0.1-notes.rst index c1da0ec854..62aaef2a8f 100644 --- a/docs/users_guide/9.0.1-notes.rst +++ b/docs/users_guide/9.0.1-notes.rst @@ -6,6 +6,7 @@ Version 9.0.1 The significant changes to the various parts of the compiler are listed in the following sections. +The :ghc-flag:`LLVM backend <-fllvm>` of this release is to be used with LLVM 9. Highlights ---------- @@ -37,25 +38,33 @@ Highlights f True = 1 f x = ... case x of { False -> 2; True -> 3 } ... - GHC is now able to detect the case alt returning 3 as redundant. + GHC is now able to detect the case alternative returning ``3`` as redundant. - Some more performance improvements in edge cases. -* Windows: Use the large address space allocator. +* Windows: Use the large address-space allocator. This improves runtime but causes increased memory usage on Windows versions older than Win 8.1/Server 2012. +* Windows: New IO Manager. + + A new I/O manager (WinIO) is now available as a community technical preview which is designed to allow experimentation and + bootstrapping of third-party packages such as Network. The new I/O manager is off by default and can be enabled with the + RTS flag ``--io-manager=native``. Currently the I/O manager is *unoptimized* and is focused more on correctness. There is also + no support for pipes and sockets. These will be added in the next release. `*see more* <https://www.youtube.com/watch?v=kgNh5mdZ1xw>`__. + * Big-number support - - GHC now relies on a new "ghc-bignum" package to provide Integer/Natural + - GHC now relies on a new ``ghc-bignum`` package to provide Integer/Natural implementations. This package supports the following backends: - - gmp: adapted from integer-gmp package that was used before - - native: new Haskell implementation, faster than integer-simple which is - not used anymore + - gmp: adapted from integer-gmp package that was used before + + - native: new Haskell implementation, faster than ``integer-simple`` which is + not used anymore - All backends now use the same representation for big numbers (the one that - was previously used only by integer-gmp). It led to several compiler + was previously used only by ``integer-gmp``). It led to several compiler simplifications, performance improvements and bug fixes (e.g. :ghc-ticket:`15262`, :ghc-ticket:`15286`). @@ -63,10 +72,10 @@ Highlights deterministic results so that they can be tested one against the other (they can only differ in performance). As a consequence, some functions that were only provided by integer-gmp (prime test, secure powmod, etc.) are no longer - provided by ghc-bignum. Note that other packages (e.g. hgmp) provide these + provided by ghc-bignum. Note that other packages (e.g. ``hgmp``) provide these functions. - - For now GHC still doesn't allow dynamic selection of the ghc-bignum backend + - For now GHC still doesn't allow dynamic selection of the ``ghc-bignum`` backend to use. * Breaking change: Template Haskell splices now act as separation points @@ -237,6 +246,10 @@ Language as ``f (-123)``, but ``x-123`` as ``(-) x 123``. Before this amendment, :extension:`NegativeLiterals` caused ``x-123`` to be parsed as ``x(-123)``. +* GHC now requires whitespace between infix operators and their arguments in + some cases where it was not previously necessary as the result of the + :ref:`whitespace-sensitive operator parsing proposal <https://github.com/ghc-proposals/ghc-proposals/pull/229>`. + Compiler ~~~~~~~~ @@ -258,6 +271,10 @@ Compiler GHCi ~~~~ +- GHCi prompt no longer lists loaded modules. + The previous behavior can be restored with ``:set prompt "%s> "`` + and ``:set prompt-cont "%s| "``. + - The ``:script`` command now allows for file names that contain spaces to passed as arguments: either by enclosing the file names in double quotes or by escaping spaces in file names with a backslash. (:ghc-ticket:`18027`) diff --git a/docs/users_guide/using-optimisation.rst b/docs/users_guide/using-optimisation.rst index 79cac66a17..3fcac45e11 100644 --- a/docs/users_guide/using-optimisation.rst +++ b/docs/users_guide/using-optimisation.rst @@ -1532,4 +1532,3 @@ by saying ``-fno-wombat``. is used. You can disable the second approach entirely by setting the threshold to 0. - |