From: Hugh Sasse Staff Elec Eng <hgs / dmu.ac.uk>
Subject: [ruby-talk:04248] TABWTDI and Hash.new([])
Date: Fri, 28 Jul 2000 11:43:26 +0100 (BST)

[...]

> I can live with this now I know, so I am not really pressing for change,
> but I'd like to know about the serious considerations that make this way
> the better way.  It will help me understand the thinking behind ruby
> better.

I don't know the exact reason why it behave this way but, IMHO, it
might be because in the Ruby World 'thing' is a reference to object,
not the object itself?

Hash.new(thing) is, IMHO,

"create a hash with reference to thing as a default value",

rather than 

"create a hash with thing as a default value"



so, Hash.new([]) can be read,

"create a hash with reference to the anonymous array as a default
value"

rather than

"create a hash with an empty array as a default value"

regards,
--
         yashi