[Haskell-cafe] Can this be done?
cristiano.paris at gmail.com
Wed Feb 11 09:14:02 EST 2009
On Wed, Feb 11, 2009 at 2:53 PM, Sebastian Sylvan
<sylvan at student.chalmers.se> wrote:
> I think that would be difficult. You could probably store the continuation
> in a server-side cache if you aren't doing CGI but have a persistent server
> process, but eventually you'll need to discard unused continuations to avoid
> running out of memory. You may be able to use a WASH style continuation
> model in conjunction with this. So you store the session logs on disk, and
> if the continuation does not exist in memory you'd fetch the session log
> from disk, replay the whole session from that, and reproduce the
> continuation that way. That way most sessions would just work directly off
> of the cache and never touch disk, but if someone waits too long (or, say,
> bookmarks a page in the middle of the session!) there's still a fallback
> stored on disk.
I thought about something like that. In this regards, I narrowed the
problem to a computation's internal binding to symbol names. With this
respect, a point-free approach, like the one found in the factor
language, would be simpler to handle as you'd have to serialize the
state of stacks and those of any other monads used.
More information about the Haskell-Cafe