Symbol#to_proc
これはいいな。すごいな。
irb(main):001:0> class Symbol; def to_proc; Proc.new{|obj,*args| obj.send(self,*args)}; end; end irb(main):002:0> require 'bigdecimal' irb(main):003:0> require 'bigdecimal/util' irb(main):004:0> [0.5,0.25,0.125].map(&:to_d) => [#<BigDecimal:b7e516d8,'0.5E0',4(8)>, #<BigDecimal:b7e51674,'0.25E0',4(8)>, #<BigDecimal:b7e51598,'0.125E0',4(8)>] irb(main):006:0> [0.5,0.25,0.125].map(&:to_d).map(&:to_r) => [Rational(1, 2), Rational(1, 4), Rational(1, 8)] irb(main):007:0> require 'mathn' irb(main):008:0> [0.5,0.25,0.125].map(&:to_d).map(&:to_r).map(&:inspect) => ["1/2", "1/4", "1/8"] irb(main):009:0> ["foo","","bar"].any?(&:empty?) => true irb(main):010:0> ["foo","","bar"].reject(&:empty?) => ["foo", "bar"] irb(main):011:0> ["foo","","bar"].reject(&:empty?).any?(&:empty?) => false irb(main):012:0> [["foo",2],["bar",3]].map(&:*) => ["foofoo", "barbarbar"] irb(main):013:0> {"foo"=>2, "bar"=>3}.map(&:*) => ["foofoo", "barbarbar"]
楽しいな。