2011年01月08日23:09 Ruby Rubyでメタプログラミング 〜暗黙的に呼ばれるto_procメソッド 先日、こんな感じの処理に遭遇しました。はて、、何じゃこりゃ・・(´・ω・`) ポカーン (1..5).each(&method(:puts)) と思って調べたのでまとめておきます。この処理が理解できれば一人前です。きっと。 ブロックはオブジェクトではない Ruby では大抵のものがオブジェクトですが、オブジェクトではないものも一部あります。ブロックがその一つです。 例えばこんな風にブロックを定義することは出来ません。 block = { "test" } # in:1: odd number list for Hash そもそも Ruby の構文ではハッシュとして扱われるためブロックを直接生成することは出来ません。Block.new みたいな構文も無いので、ブロックは ti