From: Allison Randal <[EMAIL PROTECTED]> Date: Sun, 20 Jul 2008 23:27:44 -0700
. . . That patch demonstrates the exact behaviour that is no longer supported under the new spec and implementation. Tell me more about how you're using the old pushaction, and I'll suggest alternatives for implementing that functionality. Allison I am using pushaction to implement UNWIND-PROTECT [1] and dynamic (a.k.a. "special") variable binding [2]. These features are both illustrated by the "Actions" page of my YAPC talk [3]. The diagrams on this page show how the current implementation works in gory detail. I mention this example because it is a reasonable approximation to a real-world case that illustrates why one would want continuations to invoke actions transparently. (Indeed, this is why I made the feature work the way it does in r14668. ;-) In fact, you can check out the whole talk from the Subversion repository [4] and run "make test" (after appropriate makefile editing). The test-action case does indeed fail in pdd25cx; I tried it before and thought it was working, but I must have tested it wrong. Just to be painfully clear, these are critical Common Lisp features, without which Kea-CL is not worth pursuing. -- Bob [1] http://www.lispworks.com/documentation/HyperSpec/Body/s_unwind.htm [2] http://www.lispworks.com/documentation/HyperSpec/Body/d_specia.htm [3] http://rgrjr.dyndns.org/perl/acsip/actions.html [4] https://rgrjr.dyndns.org/svn/web-site/trunk/perl/acsip/