Dissecting a Ruby Block

Meta-programming