On Sat, May 13, 2017, at 08:20, Michael Kjörling wrote:
Correct me if I am wrong, but _pass by value_ as
opposed to _pass by
reference_ requires making a copy, no? That's the whole point, to
allow the callee to poke at the value it is given at will.
If that were the issue, the callee could simply automatically make the
copy if-and-only-if it needs it.
The reason that it can't be done without making a copy is, rather, that
there might be some *other* reference in play, through which the
original array could be modified (thus improperly changing what the
callee sees).