
#15456: (ImplicitParams) Allow ? in binding patterns -------------------------------------+------------------------------------- Reporter: Welperooni | Owner: (none) Type: feature | Status: new request | Priority: normal | Milestone: 8.6.1 Component: Compiler | Version: 8.4.3 Keywords: | Operating System: Unknown/Multiple ImplicitParams | Architecture: | Type of failure: None/Unknown Unknown/Multiple | Test Case: | Blocked By: Blocking: | Related Tickets: Differential Rev(s): | Wiki Page: -------------------------------------+------------------------------------- This is mostly useful when dealing with ImplicitParams. Suppose "foo" takes an implicit parameter "?msg" {{{#!hs -- Invalid, parse error in pattern ?msg bar ?msg = foo \?msg -> foo -- With -XViewPatterns, same issue bar ( ... -> ?msg) = foo }}} Instead, you are forced to create a local let binding {{{#!hs bar msg = let ?msg = msg in foo \msg -> let ?msg = msg in foo bar ( ... -> msg) = let ?msg = msg in foo }}} -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/15456 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler