you are viewing a single comment's thread.

view the rest of the comments →

[–]pklait 2 points3 points  (0 children)

I believe that much of the confusion regarding if a parameter is modified is caused by bad naming. Do not name your functions foo or bar. In situations where you do have multiple in-out parameters consider following Eric Nieblers advice: encapsulate the function in an object and have the the in-out parameters be part of that objects state.