On Thu, Aug 20, 2009 at 1:02 PM, Ketil Malde<ke...@malde.org> wrote:
> David Leimbach <leim...@gmail.com> writes:
>
>> I'm pretty certain that forcing a pattern match via case is what disallows
>> the laziness to get out of hand.  The case statement, when evaluated, must
>> choose a matched pattern branch, even if it's the only possibility, which
>> ends up boiling down to "seq" anyway doesn't it?
>
>    Prelude> case undefined of x -> ()
>    ()
>
> So I think you are incorrect: the 'undefined' here isn't evaluated by
> the case.
>

It's doing a case on a pattern match that forces evaluation.  Try:

> case undefined of (x:xs) -> ()

Antoine
_______________________________________________
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe

Reply via email to