Dissecting a Ruby Block

Ruby Internals