##
my $mod = some_condition() ? 'Module1' : 'Module2';
eval "require $mod; ${mod}::foo()";
####
use strict;
use warnings;
my $mod = shift;
require "$mod.pm";
eval "$mod->import(); 1" or die; # modules all export 'foo' by default
# eval "$mod->import( 'foo' ); 1" or die;
foo();