# File1 use ObjectMaker; # ObjectMaker has all the exporter stuff use Foo; my $Object = ObjectMaker->new(); &Foo::DoSomething(foo, bar, \$Object); #### # File 2 package Foo; use ObjectMaker; sub DoSomething { my $foo = shift; my $bar = shift; my $Object = shift; ... my $blub = $$Object->MethodName(blah); } 1;