package Bug::Destroy::System; sub new { my $pkg = shift; bless {}, $pkg; } sub DESTROY { # we need to call some system routine system("echo hello"); } package main; my $t = Bug::Destroy::System->new(); die "Oh, no, bad thing happened!"; __END__