def bb(ary)
ary[0] = 'A'
p ary
end

ary = [1, 2]
bb(ary)

p ary
["A", 2]
["A", 2]

関数の引数に、配列を渡すと、参照渡しになり、
関数の内部で、配列に加えた変更が、
関数の外で定義された配列にも及ぶ(同一の配列)

ary = [1, 2]
bb(ary)

の時に自動的に、配列のすべての要素を、
コピーして渡すことは出来ないか?
つまり、別々の配列となる

bb(&:ary)
こういう簡単な記法はないの?