in reply to Re^2: using a variable with require
in thread using a variable with require

The usual pattern for this is to put each implementation into a package hierarchy of objects, then know the package name you want to load, then:

use Module::Load; ... load $package; my $obj= $package->new( %options ); $obj->do_something;

No need for awkward cross-package function-calls.