Im so sorry, I have misunderstood everything. I thought it was supposed to modify the array not create a new one within the block. Is there any method that actually does modify the array or will I have to do something like this: array = [1,3,7,8] i = 0 while i < array.length array[i] = array[i] * 2 i += 1 end -- Posted via http://www.ruby-forum.com/.