>>13
Because Ruby is huge, underspecified and slow as fuck. I think blocks don't have their own scope; they're not real enclosures.
But who knows, I can't find Ruby's scoping rules succinctly documented anywhere. Fuck, I'm not even quite sure whether the scoping is dynamic or static. Rubyists seem to love to stuff their APIs full of magic shit just because they can.