diff options
author | Alexis King <lexi.lambda@gmail.com> | 2020-04-19 20:45:03 -0500 |
---|---|---|
committer | Marge Bot <ben+marge-bot@smart-cactus.org> | 2020-04-30 01:57:35 -0400 |
commit | f4d3773c7f4209cd3a0495ab9a29b978da48e2ff (patch) | |
tree | 6f820d5354801f47125f22937536a1c508c68388 | |
parent | a48cd2a045695c5f34ed7b00184a8d91c4fcac0e (diff) | |
download | haskell-f4d3773c7f4209cd3a0495ab9a29b978da48e2ff.tar.gz |
Document BlockArguments/LambdaCase support in arrow notation
-rw-r--r-- | docs/users_guide/8.12.1-notes.rst | 16 | ||||
-rw-r--r-- | docs/users_guide/exts/lambda_case.rst | 7 |
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 |