![](https://secure.gravatar.com/avatar/34273995705eeb69786278a23a87d921.jpg?s=120&d=mm&r=g)
I am playing with a lisp dialect (at least in my head) that I am thinking about implementing on the CLR. Like Java the CLR requires jumps across method call boundaries to be done using the exception handling mechanism. If I have code like the following in abcl: (block foo (flet ((callback () (return-from foo t))) (something-that-calls-into-java #'callback) ... stuff that won't happen if the callback is invoked)) And the plain old Java I'm calling into is pathological and catches the exception raised by calling the callback without re-throwing it, the non-local return never happens. Is that correct? If so, is there no way around it? Matt -- "You do not really understand something unless you can explain it to your grandmother." -- Albert Einstein.