Allen's lambda syntax proposal

Jon Zeppieri jaz at bu.edu
Sat Dec 6 09:57:28 PST 2008


On Sat, Dec 6, 2008 at 11:49 AM, Maciej Stachowiak <mjs at apple.com> wrote:
>
> On Dec 5, 2008, at 11:12 PM, Jon Zeppieri wrote:
>
>>
>> I don't get it.  What issue is raised by return-to-label that isn't
>> already raised by exceptions?  They're practically the same thing,
>> only return-to-label is *easier* to analyze statically, because
>> 'return' can only jump to a label that is lexically (not just
>> dynamically) in scope.
>
> If you want to call a function and make sure control flow does not escape,
> then in the face of exceptions alone you can wrap it in try/catch. However,
> with multi-level returning lambdas, if you are passed a function then you
> have no way to prevent it from returning early, since it could be a lambda
> in the lexical scope of your caller.

The strawman contains the following text:

"Unwinding the execution context may pass through finally blocks,
which execute and may perform their own control effects, effectively
canceling the unwinding."

So, you have a dynamic-wind-like mechanism, if you need it.

Also, what was the performance issue?

-Jon


More information about the Es-discuss mailing list