summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlexis King <lexi.lambda@gmail.com>2020-04-19 20:45:03 -0500
committerMarge Bot <ben+marge-bot@smart-cactus.org>2020-04-30 01:57:35 -0400
commitf4d3773c7f4209cd3a0495ab9a29b978da48e2ff (patch)
tree6f820d5354801f47125f22937536a1c508c68388
parenta48cd2a045695c5f34ed7b00184a8d91c4fcac0e (diff)
downloadhaskell-f4d3773c7f4209cd3a0495ab9a29b978da48e2ff.tar.gz
Document BlockArguments/LambdaCase support in arrow notation
-rw-r--r--docs/users_guide/8.12.1-notes.rst16
-rw-r--r--docs/users_guide/exts/lambda_case.rst7
2 files changed, 22 insertions, 1 deletions
diff --git a/docs/users_guide/8.12.1-notes.rst b/docs/users_guide/8.12.1-notes.rst
index 2d142800ca..8b745897da 100644
--- a/docs/users_guide/8.12.1-notes.rst
+++ b/docs/users_guide/8.12.1-notes.rst
@@ -104,6 +104,21 @@ Template Haskell
- The ``-XTemplateHaskellQuotes`` extension now allows nested splices as nested
splices do not lead directly to compile-time evaluation. (!2288)
+Arrow notation
+~~~~~~~~~~~~~~
+
+ - When combined with :extension:`Arrows`, the :extension:`LambdaCase` extension
+ now additionally allows ``\case`` syntax to be used as a command in ``proc``
+ notation.
+
+ - When combined with :extension:`Arrows`, the effects of the
+ :extension:`BlockArguments` extension now also apply to applications of
+ arrow control operators in ``(|`` banana brackets ``|)``: ::
+
+ (| untilA (increment -< x + y) do
+ within 0.5 -< x
+ ... |)
+
``ghc-prim`` library
~~~~~~~~~~~~~~~~~~~~
@@ -182,4 +197,3 @@ for further change information.
libraries/unix/unix.cabal: Dependency of ``ghc`` library
libraries/Win32/Win32.cabal: Dependency of ``ghc`` library
libraries/xhtml/xhtml.cabal: Dependency of ``haddock`` executable
-
diff --git a/docs/users_guide/exts/lambda_case.rst b/docs/users_guide/exts/lambda_case.rst
index a65c1e881e..efcb6b6474 100644
--- a/docs/users_guide/exts/lambda_case.rst
+++ b/docs/users_guide/exts/lambda_case.rst
@@ -25,4 +25,11 @@ Note that ``\case`` starts a layout, so you can write ::
...
pN -> eN
+Additionally, since GHC 8.12.1, combining :extension:`LambdaCase` with
+:extension:`Arrows` allows ``\case`` syntax to be used as a command in
+``proc`` notation: ::
+ proc x -> (f -< x) `catchA` \case
+ p1 -> cmd1
+ ...
+ pN -> cmdN