Ejector

Tests
Check what happens when an ejector is called from within a finally block being executed during an ejection.

? escape a { >  escape b { >    try { >      b("inner") >    } finally { >      a("outer") >    } >   } > }
 * 1) value: "outer"

Try-catch does not catch ejections.

? escape a { >  try { >    a("safe") >  } catch p { >    p >   } >  "fallthru" > }
 * 1) value: "safe"

Ejectors have dynamic extent.

? def a ? escape bind a {} ? a
 * 1) value: 
 * 1) problem: Failed: Ejector must be enabled