It's alive! It's Aliiiive! Is it an array, or is it a hash? Neither! Both! It's a disgusting frankenstein's monster made by sewing together bits and pieces of arrays and hashes into a monstrous and unholy creation! What does it do? It manufactures an object that can be used as either an array reference or a hash reference. Why would you ever want such a thing? Well, it's the natural way to present an ordered hash. You could then use $orderedhash->[7] to get item number seven, or $orderedhash->{key} to get the item with the specified key. Or for example you could have an object that represents a directory. $dir->[3] gets the name of file number 3 from the directory, so it is easy to iterate over the files in the directory, and $dir->{name} gets the stat information for the file named `$name'. The test.pl file has a demonstration of how to do this. Discovery of how this works is left as an exercise for the reader.