Maintaining the same order between values and keys should mean you can depend on keys returning the same order each time, otherwise how is values supposed to know which order to present its order?
That makes it look pretty dependable to me, assuming: a) same process (or a fork of it), and b) hash otherwise unchanged between the two calls to keys.my @keys1 = keys %some_hash; my @keys2 = keys %some_hash; #different from @keys1? my @values = values %some_hash; # same order as @keys1 or same as @key +s2?
Personally, I only rely on the order when I'm doing something like @hash2{keys %hash1} = values %hash1;, otherwise I don't think I ever rely on the order from keys (if I care, I sort them) or values (there's no real way to sort values the same as sorting keys anyway), so I doubt I'm affected, but only one way to find out. :-)
In reply to Re^3: Hash order randomization is coming, are you ready?
by Tanktalus
in thread Hash order randomization is coming, are you ready?
by demerphq
For: | Use: | ||
& | & | ||
< | < | ||
> | > | ||
[ | [ | ||
] | ] |