If you want to edit and not have those changes reflected, yes. However, when using the \@ prototype, my experience is that you usually want to have your changes reflected in the array when you're done. In fact, most examples in the docs regarding prototypes and arrays involve things like my_push() and my_pop(), which do change their parameters. YMMV
------
We are the carpenters and bricklayers of the Information Age.
Please remember that I'm crufty and crochety. All opinions are purely mine and all code is untested, unless otherwise specified.