[Haskell-cafe] GHC magic optimization ?
Henning Thielemann
lemming at henning-thielemann.de
Thu Dec 3 10:40:32 EST 2009
On Thu, 3 Dec 2009, Emmanuel CHANTREAU wrote:
> Hello
>
> One thing is magic for me: how GHC can know what function results to
> remember and what results can be forgotten ?
>
> Is it just a stupid buffer algorithm or is there some mathematics
> truths behind this ?
Although it is not required by the Haskell 98 report, the 'let' expression
usually stores variable values (sharing) and top-level constants are also
stored. I wonder how much of currently existing Haskell code would still
work, if this would be changed, since this behavior is essential for
memory usage and speed.
If you want to cache function results, see:
http://www.haskell.org/haskellwiki/Memoization
More information about the Haskell-Cafe
mailing list