http://qs321.pair.com?node_id=912145


in reply to Re^2: Virus toy model
in thread Virus toy model^2

I guess you are asking why you can't do this:

%hash=(0=>A); %hash=(1=>B);

Both these operations operate on the whole hash, initializing it with the data on the right side of the equation. The equation sign "=" means literally "the left side is made equal to the right side", not "the right side is added to or combined with the left side". So after the second equation any previous values in the hash will be lost

While when you use $hash{1}=B you only manipulate one value inside the hash, leaving the rest of the hash unchanged.