I came across this neat way of sharing a program in limited space in plain text (Stack Overflow comments are limited in length).
require 'base64';require 'zlib';puts Zlib.inflate(Base64.decode64("eJxlkMEOwiAQRO98hekFuGzxQEwPXvwR01ZqiYHqBk2Tln8XDlWgnDbM25nJonq9NaoD7ZTtR9PigxK09zM7AkgRHieXTYHOsBNf1nklM6B6TuhYpdp+rPgSdiCOi/d/kQ71QBOtAVFLEDly05+UYQ2H+MckL6z0zioDdJG1S9K1K4iQAW66DhnmiqRYKEJFXMByux+XuOJ2XdO60dKsjC7aBtyTL5O5hLk="))
When run this produces:
require 'benchmark' rng=(1..50000) Benchmark.bm(7){|x| x.report("each"){rng.each{}} x.report('f/f'){rng.each{9.0/5.0}} x.report('fdiv'){rng.each{(9).fdiv(5)}} x.report('f/i'){rng.each{9.0/5}} x.report('i/f'){rng.each{9/5.0}} x.report('i/tf'){rng.each{9/(5).to_f}} x.report('tf/i'){rng.each{(9).to_f/5}} x.report('tf/tf'){rng.each{(9).to_f/(5).to_f}} require 'mathn' x.report('i/i'){rng.each{9/5}} }
Source: Stack Overflow