package SomePackage; BEGIN { print "Beginning package ".__PACKAGE__." Error code: $?.\n"; } sub new() { my $self = {}; return bless $self; } sub DESTROY() { my $self = shift; warn "DESTROYING $self"; } sub print_filename() { my $object = {}; $object{FILES} = $_[1]; $object{PARAMETER_TWO} = $_[2]; $object{PARAMETER_THREE} = $_[3]; while(($key,$value) = each(%object)) { print "$key => $value\n"; } } END { print "Ending package ".__PACKAGE__ ." Error code: $?.\n"; } return 1;