Я шел ниже решения, но я полагаю, что это должно быть более хорошим там...
array = [ 'first','middle','last']
index = array.length
array.length.times { index -= 1; puts array[index]}
Руби умен
a = [ "a", "b", "c" ]
a.reverse_each {|x| print x, " " }