[Haskell] insufficiently laziness@pattern -- more
S. Alexander Jacobson
alex at i2x.com
Tue Mar 30 12:01:00 EST 2004
Thanks for the ~ syntax, but my question is really
why you need it? What benefit do you get from
Alternatively, would anything break if a future
Haskell just treated all patterns as irrefutable?
S. Alexander Jacobson mailto:me at alexjacobson.com
On Tue, 30 Mar 2004, Martin [ISO-8859-1] Sj=F6gren wrote:
> tis 2004-03-30 klockan 17.30 skrev S. Alexander Jacobson:
> > I would assume that this function:
> > foo list@(h:t) =3D list
> > is equivalent to
> > foo list =3D list
> > where (h:t)=3Dlist
> > But passing  to the first generates an error
> > even though h and t are never used! Passing  to
> > the second works just fine.
> You can write this as
> > foo' list@(~(h:t)) =3D list
> foo'  will evaluate to . The H98 report calls it an "irrefutable
> pattern", IIRC.
More information about the Haskell