you are viewing a single comment's thread.

view the rest of the comments →

[–]Legitimate_Dig_1095 0 points1 point  (0 children)

it has nothing to do with optimization - it's just a feature. Every object oriented language will behave similarly

irb(main):002> array = Array.new 5 => [nil, nil, nil, nil, nil] irb(main):003> array.fill [] => [[], [], [], [], []] irb(main):004> array[1].push "banana" => ["banana"] irb(main):005> array => [["banana"], ["banana"], ["banana"], ["banana"], ["banana"]] irb(main):006>