perl でモジュールを動的にロードする
UNIVERSAL::require
をつかうと良いそうだ
use UNIVERSAL::require;
my $package = "Foo::Bar";
$package->require;
ちょっとあれな方法だと
my $package = "Foo::Bar";
eval "require $package";
ふつうに require $package;
とやると require が $package
の内容にファイルパス (/foo/bar/Foo/Bar.pm
みたいな文字列) を期待してしまうらしくダメらしい.
Mouse::Util::load_class
など, モジュールがロードの仕組みを提供しているものもある