[bitc-dev] Error in specification of DO
Kevin Reid
kpreid at mac.com
Thu Jul 10 07:09:01 CDT 2008
On Jul 10, 2008, at 0:36, Jonathan S. Shapiro wrote:
> What I proposed today was a lexically scoped, non-capturable
> continuation form:
>
> (escape-via escape-ident expr)
>
> with the intended meaning that /escape-ident/ is in scope within /
> expr/
> as a procedure label whose invocation returns from the escape-via
> construct. The return type must agree with the overall expression
> return
> type.
In case this is new and useful information: Other than /escape-ident/
being bound to a procedure, this is identical to Common Lisp's BLOCK &
RETURN-FROM.
http://www.lispworks.com/documentation/HyperSpec/Body/s_block.htm
(Note that it is possible to capture a RETURN-FROM in a closure; it
still has only dynamic extent.)
It is possible to implement all other forms of non-local exit in terms
of BLOCK.
--
Kevin Reid <http://homepage.mac.com/kpreid/>
More information about the bitc-dev
mailing list