> > For me, dynamic-wind has MUCH MORE power than unwind-protect, because it
> > is the construction for reentering previous computation contexts.
> > On the contrary, UNWIND-PROTECT only serves to safely leave contexts, so
> > it has much simpler semantics. I doubt we want to have dynamic-wind in
> > place of unwind-protect in CL, at least not until Scheme community comes
> > up with verifiable full semantics for dynamic-wind :-(and I doubt, whether
> > it is possible to define all kinds of side-effects and how to reasonably
> > restore the state for them).
>
> Isn't it obvious that one just cannot do that? Therefore, an "if you do
> this, the behaviour is undefined" should suffice for the people that
> actually want to solve real-world problems with continuations. If you
> really have to formally specify behaviour there, just let it be
> non-termination.
>
I agree, but then you must decide where is the boundary between what is
feasible and what is not --- and the decision depends on current
technology state (we should only define the behaviors we know we can
implement). The agreement in this case should come from language standard
group or similar body, otherwise we end up with nonportable programs.
That's the reason I mentioned Scheme community.
Regards
Zbyszek Jurkiewicz