Matz: > I'm thinking of another way: > > Hash.new{[]} > > This means if the key is not found in the hash, evaluate given block > and returns its value as default. In this example, the block creates > new array for each execution. Sounds even better (more powerful) as one can easily have logic for determination of what should be the default value this time. - Aleksi