summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBen Gamari <ben@smart-cactus.org>2021-04-22 13:12:56 -0400
committerMarge Bot <ben+marge-bot@smart-cactus.org>2021-04-26 23:55:44 -0400
commit9d34f4546ab54c3dbb8f7be8f3e855d370592e8d (patch)
tree75992b293514d25c97433e4e193049d09710e7b5
parent3339ed49b103d5aab42733dfb434de3a9a27bf2b (diff)
downloadhaskell-9d34f4546ab54c3dbb8f7be8f3e855d370592e8d.tar.gz
users guide: Various other cleanups
-rw-r--r--docs/users_guide/9.0.1-notes.rst35
-rw-r--r--docs/users_guide/using-optimisation.rst1
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.
-