From: Rein Henrichs Date: 2010-07-13T08:40:20+09:00 Subject: Re: Arrays and Hashes On 2010-07-12 12:01:20 -0700, Jacob Mitchell said: > [Note: parts of this message were removed to make it a legal post.] > >> >> I may not getting your point clear. What is it not applicable to Ruby >> 1.9 from what Jake said? >> >> Ruby 1.9 added a constraint that whenever you query for an iterator using > any of the Hashes each* methods, you'll always get the objects in the same > order that they were inserted into that hash. Prior to that there were no > promises about the order the elements would be yielded by the iterator. > > -Jake In practice, hash order (for 1.8) is deterministic *per machine*, meaning the hash will enumerate in the same order each time for you, but not in the same order as someone else's machine. That said, this must not be relied on (after all, it isn't in the spec). One should not expect hashes to be ordered, and any code in Ruby 1.8 that treats the order of a hash as significant is incorrect. -- Rein Henrichs http://puppetlabs.com http://reinh.com