6.2.14. Lambda-case¶
- LambdaCase¶
- Since:
- 7.6.1 
 - Allow the use of lambda-case syntax. 
The LambdaCase extension enables expressions of the form
\case { p1 -> e1; ...; pN -> eN }
which is equivalent to
\freshName -> case freshName of { p1 -> e1; ...; pN -> eN }
Note that \case starts a layout, so you can write
\case
  p1 -> e1
  ...
  pN -> eN
Additionally, since GHC 9.0.1, combining LambdaCase with
Arrows allows \case syntax to be used as a command in
proc notation:
proc x -> (f -< x) `catchA` \case
  p1 -> cmd1
  ...
  pN -> cmdN