This is the mail archive of the
guile@sourceware.cygnus.com
mailing list for the Guile project.
Re: call-with-dynamic-root and fluids
> Perhaps in some situations Scheme code also has good reasons to not
> let continuations jump into or out of a particular piece of code.
>
> > The current dynamic roots *have* their own wind chain. What do you
> > mean by "walk up and down"? What currently happens is that since
> > they have a dynwind chain of their own, call-with-dynamic-root
> > begins by winding itself out of the caller's dynamic context, in
> > order to be able to start a new chain.
>
> This causes strange an unexpected behavior in some cases though. If
> you call-with-dynamic-root inside a dynamic-wind, your winders get
> unwound even though you haven't really left the dynamic-wind's dynamic
> extent. Dynamic roots should have a concept of being the child of
> another root perhaps. But then they aren't really dynamic roots.
>
> I guess what users really want is not `call-with-dynamic-root', but
> `call-blocking-continuations' or something like that.
This sounds very similar to the concerns Matthias Felleisen was trying
to address with `prompt' and `control'. Before reworking
call-with-dynamic-root, we should take the time to understand that
proposal.