Array#+ combines the receiver array with an argument array and returns a new array, leaving the receiver unchanged. Unlike concat, it does not modify the receiver. section 9.2.3
>> a = [1,2,3]
=> [1, 2, 3]
>> b = a + [4,5,6]
=> [1, 2, 3, 4, 5, 6]
>> a
=> [1, 2, 3] 1
Combining two arrays leaves a unchanged while assigning the combined result to b. section 9.2.3

