Hi Ana,
Don't I have to put "use" and the name of packages A and B anywhere on the main program?
I advice you to use Module::Pluggable for that (as I think you're designing a pluggable system or whatever): $ cat > module-pluggable-sample.pl use strict; use warnings; package Application; use Module::Pluggable; package main; foreach my $plugin (Application->plugins()) { if (my $code = $plugin->can("my_routine")) { $code->(); } } ^D $ mkdir -p Application/Plugin $ cat > Application/Plugin/A.pm package Application::Plugin::A; sub my_routine { print __PACKAGE__, "::my_routine()\n"; } ^D $ cat > Application/Plugin/B.pm package Application::Plugin::B; sub my_routine { print __PACKAGE__, "::my_routine()\n"; } ^D $ perl module-pluggable-sample.pm Application::Plugin::A::my_routine() Application::Plugin::B::my_routine() HTH -- Igor Sutton Lopes <[EMAIL PROTECTED]> -- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] http://learn.perl.org/