[closer-devel] Adding dynamic-wind to ContextL
Tobias C. Rittweiler
tcr at freebits.de
Sat Dec 27 23:55:53 UTC 2008
Pascal Costanza <pc at p-cos.net> writes:
> (dynamic-wind
> (let ((*current-context* (cons something *current-context*)))
> (proceed
> some code)))
>
> The code that is captured by dynamic-wind will just be executed as
> normal, but whenever a dynamic environment is reestablished that
> captures this dynamic-wind, the code here is re-executed up until the
> proceed form, which is then replaced with the continuation of
> reestablishing that dynamic environment. Proceed is like a progn,
> except that it marks the variable part of a dynamic-wind.
I haven't fully wrapped my head around all this, but if it makes sense
to nest DYNAMIC-WIND, I think DYNAMIC-WIND + PROCEED should be lexically
tagged like BLOCK + RETURN-FROM are.
-T.
More information about the closer-devel
mailing list