Sorry for the poor attempt at quoting and the ignorance of the 
convention, but my mail client seems to be crapping out at the size of 
the ruby-talk mailbox!?...


As to the following:

"Well, to be fair, you did more than this.  You suggested that, 
perhaps,
hashes are actually ordered and that none of us really knows what a 
hash
is...  You also accused it of not following the PoLS, which many Ruby
programmers feel strongly about.  Considering people's knowledge of 
hashes,
even outside the context of Ruby, and your self proclaimed ignorance
(although this was not in your original post), these are bold 
statements
and are bound to illicit bold responses."

I wrote: "It doesn't seem very PoLS to have it reordered, although 
perhaps one shouldn't be surprised that a hash is unordered?"

This is not a bold statement.  I don't understand how you could have 
understood that as a suggestion that "hashes are actually ordered"?  
It looks more like a question to me and reeks of doubt as to whether 
my (increasingly formerly held) expectation was correct or 
reasonable...


More generally:

I assume that something works as it should, then ask why I might be 
wrong first.  That is what I was doing.  If after having considered 
what design decisions are entailed, I might start to consider that 
something is wrong.  I hadn't gotten to this point yet.

Perhaps I was expecting more of an ordered associative array as 
someone else suggested that it might be called if such a thing were to 
exist.

As to one's ignorance.  I think that the beginner's mind should be 
one's default starting position at all times, since it allows one to 
critique one's self more readily.  Such is imbued with a calm doubt.


As to the following:

"Personally, I feel you are misunderstanding the PoLS but I've already
addressed that in another post."

As you wrote, if I'm surprised that rand() produces different numbers, 
then I am still surprised.  The question is as to whether it is 
reasonable to be surprised.  What is the base of expectations?  What 
is a reasonable expectation of what hashes will and won't do?


More generally:

Also, to whomever said that that I had said or implied as much, I 
never made the claim that Matz had used the term PoLS.  I may have 
made that claim, given or having taken the opportunity to do so, but I 
haven't.

I am not inclined to 'dumb down' Ruby.  If I wanted to be 
straight-jacketed or kept out of the drawer with all the sharp knives, 
then I'd be using Python.  (That there IS a bold statement.)

So, if the use of the {} notation for Hash is not to include ordering 
because on balance it is preferred for reasons of speed/size not to 
include ordering and because it is reasonable to expect that a hash 
won't by default be ordered, then OK.

Ruby must balance power with simplicity, and elegance with complexity.