You people rock. Responses were really helpful and I understand how the computation goes now.

I see I need to reprogram my eyes to expect lazy evaluation in places where I am used to one-shot results. I see lazy evaluation is all around in Haskell builtins.

From a formal point of view how does this work? The specifications in

  http://www.haskell.org/onlinereport/standard-prelude.html

include the lazy aspect of the definitions albeit they do not require that exact implementation, right?

On the other hand, where does Haskell 98 say == is lazy on lists?

-- fxn

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

Reply via email to