PLP::Tie::Delay
Delays hash generation. Unties the hash on first access, and replaces it by the generated one. Uses symbolic references, because circular ties make Perl go nuts :)
tie %Some::hash, 'PLP::Tie::Delay', 'Some::hash', sub { \%generated_hash };
This module is part of the PLP internals and probably not of any use to others.