I've seen several posts related in some way to the subject of using  
hashes as keys in hashes, but I haven't seen a clear solution to the  
issue.  My problem is I want to generate a set of unique hashes.   
Since hash keys are unique, I was hoping to just put the hashes in as  
keys, something like:

	myUniqueHashes[aHash] ||= 0
	myUniqueHashes[aHash] += 1

This would not only give me a list of unique hashes, but it would  
also tell me how many times each one was seen.

Unfortunately, this does not work because in a hash, each different  
hash that is inserted as a key is considered to be different, even if  
the contents are the same.  When used as keys in a hash, two hashes  
are considered equal if aHash.id = bHash.id, meaning if they are the  
very same hash located at the same place in memory.

At the micro level, what I need is a special kind of hash that will  
consider two hash keys to be equal if aHash == bHash.  At a higher  
level, I need an efficient way to collect a unique set of hashes.  An  
array would work, but for a large set it'd be much slower....and  
storing the number of accesses would be relatively clunky compared to  
a hash's interface.

What is the Ruby way to solve this problem?

Thanks,
steve