thanks for your insights response ara.
i did my last post before reading your first...

the Alib::OrderedAutoHash looks very nice and is one of the things that
i searched.

i think i allways used sparse arrays|hashes before, with some little
exceptions while programming in C#....

your example with 2**128 showed me that php uses sparse arrays/hashes
because when i was using something like $serial_number[7099144]='blah'
i would have instantly beaten the allowed ram limit.

i think i became a little savaged while using php (hope this is proper
english)
maybe i can still be saved, i'm programming a board game (carcasonne)
in gtk to learn ruby.

back on track about auto-re-initialization of nil (or empty variable is
better, i think) to Hash (forget about Array) i found that the nils all
have the same id, so by changing one of them to an Array i would turn
them all.
i dont want something like this powerfull "become" from smalltalk some
other ppl talked about, it can (infact must) get a new id, and does not
need to retain its interior (whats in nil that i wanted to retain)

anyone having an idea of how to do this ?