in reply to Dynamic use/require

personally, i prefer eval "use $package" over manually messing with path names.

For the rest of the code, though, you don't need eval:

my $class = "Category::$classpart"; my $methodname = ....; eval "use $class" or die; # die; propagates the current $@ my $handle = $class->new; $handle->$methodname($key,$params,$testCase);