package Foo; sub new { ... }; sub xyzzy { ... }; 1; #### require Foo; my $foo = new Foo ( ); print $foo->xyzzy ( ); #### # The new Foo. package Foo; require System::Foo; @ISA = qw ( System::Foo ); ... 1; #### package System::Foo; ...