From: Gary Wright Date: 2007-04-30T11:45:24+09:00 Subject: Re: sorting by rand? On Apr 29, 2007, at 10:28 PM, Peter Seebach wrote: > l = a.length > a.each_index { |x| a[x] = a[rand(l)] } You are trashing your original array. irb(main):001:0> a = [1,2,3,4] => [1, 2, 3, 4] irb(main):002:0> l = a.length => 4 irb(main):003:0> a.each_index { |x| a[x] = a[rand(l)] } => [3, 3, 3, 4]