[Haskell-cafe] Un-memoization

L Corbijn aspergesoepje at gmail.com
Thu Mar 22 09:18:09 CET 2012


On Mar 22, 2012 2:56 AM, "Victor Miller" <victorsmiller at gmail.com> wrote:
>
> I was writing a Haskell program which builds a large labeled binary tree
and then does some processing of it, which is fold-like.  In the actual
application that I have in mind the tree will be *huge*.  If the whole tree
is kept in memory it would probably take up 100's of gigabytes.  Because of
the pattern of processing the tree, it occurred to me that it might be
better (cause much less paging) if some large subtrees could be replaced by
thunks which can either recalculate the subtree as needed,

This sounds like weak references (warning this is tricky stuff),
http://www.haskell.org/ghc/docs/7.0.2/html/libraries/base-4.3.1.0/System-Mem-Weak.html

or write out the subtree, get rid of the references to it (so it can be
garbage collected) and then read back in (perhaps in pieces) as needed.
This could be fairly cleanly expressed monadically.  So does anyone know if
someone has created something like this?
>
> Victor
>
> _______________________________________________
> Haskell-Cafe mailing list
> Haskell-Cafe at haskell.org
> http://www.haskell.org/mailman/listinfo/haskell-cafe
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.haskell.org/pipermail/haskell-cafe/attachments/20120322/6269c55d/attachment.htm>


More information about the Haskell-Cafe mailing list