Edsko de Vries <[EMAIL PROTECTED]> wrote: > > (...(((1+2)+3)+4) ... + 10000000) > > which requires stack in proportion to the number of nested parentheses > > Ah, that makes! So does it make sense to talk about "tail recursive > thunks"? Or does the evaluation of thunks always take stack space > proportional to the "nesting level"?
The key reason why nested additions take stack space, is because (+) on Integers is *strict* in both arguments. If it were somehow non-strict instead, then the unevaluated parts of the number would be heap-allocated rather than stack-allocated. Regards, Malcolm _______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe