Suppose I were creating dynamic packages at runtime and I want to make sure all the stuff in them gets destroyed. How would I ensure that?
If you want to delete a symbol table then use the
delete_package function from
Symbol e.g
use Symbol 'delete_package';
use Data::Dumper;
$Yakkity::Yak::a = 42;
print "a = $Yakkity::Yak::a\n";
print Dumper \%Yakkity::Yak::;
print "Undeffing symbol table\n";
delete_package 'Yakkity::Yak';
print "a = $Yakkity::Yak::a\n";
print Dumper \%Yakkity::Yak::;
__output__
a = 42
$VAR1 = {
'a' => *Yakkity::Yak::a
};
Undeffing symbol table
a =
$VAR1 = {};