#!/usr/bin/perl package Agent; use _Initialize; @ISA = qw( _Initialize tools ); sub _init { my ($self, %args) = @_; $self->tools::_init(%args); #$self->PunMeister::_init(%args); $self->{_acolytes} = $args{followers}; $self->{_philosophy} = $args{manifesto}; } sub DESTROY { my ($self) = @_; print "pg dtor\n"; no strict "refs"; foreach my $parent ( @{ref($self)."::ISA"} ) { my $destructor = $parent."::DESTROY"; $self->$destructor(); } } 1;