|  - case = only place evaluation occurs
|  - let = only place heap allocation occurs / thunk creation / introduce 
laziness

As Simon says, that's not true of Core, only of STG (or Core after CorePrep). 

In a application (f e), where is not "trivial" (see CoreUtils.exprIsTrivial),
        - the application allocates e if f is non-strict
        - the applciation evaluates e if f is strict

If you wanted to write a Wiki page in the Commentary summarising your 
understanding, I'd be happy to check it over.  Think of the page you'd *like* 
to have read rather than working it out by experiment.

Simon



_______________________________________________
Cvs-ghc mailing list
[email protected]
http://www.haskell.org/mailman/listinfo/cvs-ghc

Reply via email to