Ryan Davis wrote: > On Jan 17, 2007, at 10:10 PM, William James wrote: > > > Comparing Ruby to Lua and LuaJIT for intensively computing primes: > > > > Ruby 245.763 seconds > > Lua 10.685 seconds > > LuaJIT 1.311 seconds > > > > # the Ruby program > > def prime(n) > > if n > 2 and n % 2 == 0 > > return false > > end > > 3.step( Math.sqrt(n).floor, 2){|i| > > if n % i == 0 > > return false > > end > > } > > true > > end > > I wrote mine a bit different: > > def prime(n) > return false if n > 2 and n % 2 == 0 > max = sqrt(n) > 3.upto(max) do |i| > return false if i % 2 != 0 and n % i == 0 > end > return true > end > > optimize :prime > > --- > > now, optimize converts it to C which doesn't have the benefits of big > numerics built in, but that doesn't sound like a problem for the OP. > Here are my times: > > pure ruby: real 0m1.139s user 0m1.110s sys 0m0.009s > opt ruby: real 0m0.259s user 0m0.201s sys 0m0.056s You're saying that pure Ruby took less than 2 seconds? I don't see how that is possible. On the faster of the two computers at my disposal your version ran in 207 seconds.