Object#method

いいメソッドを見つけた。

method(name)
self のメソッド name をオブジェクト化した Method オブジェクトを返します。name は Symbol または文字列で指定します。

これは、適当な関数fが定義されていて、それを別の関数に渡すときに便利。

例えば、今までmapはこう書いていた。

some_array.map{|item| 
  f item
}

これを次のように書き直せる。

some_array.map &method(:f)

処理の内容は変わっていないけれど、Object#methodを使った方が意味が分かりやすいし、短く書ける。

# 関数型言語っぽいねぇ