package bar; use foo; sub new { my($type) = $_[0]; my($self) = {}; $self->{'new'} = 1; #error reporting and update vars $self->{error_type} = undef; $self->{error_string} = undef; bless($self, $type); return( $self ); } sub generate_form() { my $self = shift; my $foo = Foo->new; print $foo->do_something( "bunny" ); }