I'm creating a couple helper methods to beef up the Array type: Array.shuffle() and Array.rotate(steps) (rotates an array like [1,2,3,4,5], [2,3,4,5,1], [3,4,5,1,2], etc). What I'm wondering is what the consensus is on modifying the original array, versus returning a new array.
My instinct is that in these cases, since they're operations on the array itself, I should simply modify the array in-place.