The Storable extension brings persistency to your data. You may recursively store to disk any data structure, no matter how complex and circular it is, provided it contains only SCALAR, ARRAY, HASH (possibly tied) and references (possibly blessed) to those items. At a later stage, or in another program, you may retrieve data from the stored file and recreate the same hiearchy in memory. If you had blessed references, the retrieved references are blessed into the same package, so you must make sure you have access to the same perl class as the one used to create the relevant objects. There is also a dclone() routine which performs an optimized mirroring of any data structure, preserving its topology. Objects (blessed references) may also redefine the way storage and retrieval is performed, and/or what deep cloning should do on those objects.