Rubyいつも書き方を忘れるyield、block.call、proc、lambda。自分が使うのはeachで回したい時がほとんどなので、その書き方をまとめておく。これを見れば使い方も何となくわかるはずだ。ついでにベンチーマークも用意してみた。 # -*- coding: utf-8 -*- require 'benchmark' num = ARGV[0].to_i # yield 1 def test1(arr, &block) if block_given? arr.each {|d| yield(d) } end end # yield 2 def test2(arr, &block) arr.each do |d| yield(d) if block_given? end end # block.call 1 def test3(arr, &block) if block_giv