A patch to Perl 5.005_55 by the author implements a core API for weak
references. This module is a Perl-level interface to that API, allowing
weak references to be created in Perl.

A weak reference is just like an ordinary Perl reference except that
it isn't included in the reference count of the thing referred to.
This means that once all references to a particular piece of data are
weak, the piece of data is freed and all the weak references are set
to undef. This is particularly useful for implementing circular
data structures without memory leaks or caches of objects.

