September 15, 2008
"return" returns
from closure or
True closure? declaring context? Arity check?
--------------- ------------------- -------------------
1. block (called with yield) N declaring no
2. block (&b => f(&b) => yield) N declaring no
3. block (&b => b.call) Y except return declaring warn on too few
4. Proc.new Y except return declaring warn on too few
5. proc <<< alias for lambda in 1.8, Proc.new in 1.9 >>>
6. lambda Y closure yes, except arity 1
7. method Y closure yes