#!/usr/bin/ruby -w class Array def my_reverse tmp = self.dup #function is destructive new = [] while tmp.size > 0 new.push( tmp.pop ) end return new end end a = ['foo', 'bar', 'baz', 'cheeze whiz'] puts a.my_reverse