[Haskell-cafe] Long running Haskell program

David Leimbach leimy2k at gmail.com
Wed Nov 11 14:33:45 EST 2009

On Wed, Nov 11, 2009 at 11:19 AM, Don Stewart <dons at galois.com> wrote:

> leimy2k:
> > I figured I was better off just creating a dependency in the evaluation,
> near
> > the outermost portion of the program (the loop) that would cause a strict
> > evaluation, and so far I was right :-)
> >
> > Program behaves very well now, and responds much better too.
> Do you know if Control.Monad.State.Strict is enough to get the behaviour
> you need?
I'll give that a go.  Most of my trouble figuring out the space leak has
been around identifying what was really responsible for the problem.  The
functions that were listed as eating the space in -hc runs were not
ultimately the ones causing the lack of strictness, in that they would have
had to have been evaluated at a higher layer in a non-lazy way.

So my take away from all of this is, when you have a space leak in haskell,
start from the outer most evaluations inward, not the other way around!!!  I
think that would have saved me a ton of time.


> -- Don
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://www.haskell.org/pipermail/haskell-cafe/attachments/20091111/4dd4bea6/attachment.html

More information about the Haskell-Cafe mailing list