[Haskell-cafe] unary pattern matching

John Meacham john at repetae.net
Thu Jan 26 21:30:37 EST 2006


On Fri, Jan 27, 2006 at 12:28:23PM +1100, Donald Bruce Stewart wrote:
> john:
> > I have often wanted a shorthand syntax for testing if a value matches a
> > given pattern. I want to implement such an extension for jhc but can't
> > decide an appropriate syntax so I thought I'd ask the group. basically I
> > want something like
> > 
> > /Left (Just _)/   expands to 
> > 
> > \x -> case x of
> >         Left (Just _) -> True
> >         _ -> False
> 
> Something like pattern guards?
> 
>     f x | Just _ <- x = putStrLn "something"

hmm.. how about

(| Left (Just _) |)

since | cannot be used as a section so it can be unambigously lexed as a
different symbol. I think I like it. any other ideas?

        John

-- 
John Meacham - ⑆repetae.net⑆john⑈ 


More information about the Haskell-Cafe mailing list