無限リスト, 遅延評価, ラムダ
infinity_list = (0..Float::INFINITY).lazy even_filter = lambda { |x| x.modulo(2).zero? } p infinity_list.select(&even_filter).take(4).to_a # => [0, 2, 4, 6]