see the following codes pls, I wonder if this's a intent or a bug. For me the first line sounds better having same result with the later line

>> [1].inject(Hash.new {[]}){ |result, i| result[:mem] << i;   result } 
=> {}
>> [1].inject(Hash.new {[]}){ |result, i| result[:mem] <<= i; result }
=> {:mem=>[1]}

P.S. coding with ruby 1.9.2p180 atm