In Mathematica, this does not affect performance because copying does not take place most of the time. To put it simply, Mathematica implements copy-on-demand: it creates a copy of the data structure only if it is modified. Please see this answer for a more detailed explanation:
Does passing a variable with a large amount of data cost a lot of memory and time in Mathematica?Does passing a variable with a large amount of data cost a lot of memory and time in Mathematica?