> | $whitespace = "                        \n" * 1000
> | 
> | $nonwhitespace = $whitespace
> | $nonwhitespace[-2] = 'a'

doesn't this make the arrays the same? Isn't $nonwhitespace just a reference to $whitespace?