It's generally not a Good Thing to access globals from outside a sub if these values should much better be passed as parameters. The unqualified use of '$File::Fimnd::name','$File::Find::dir' and '$_' makes it quite impossible to look at this function alone.
Second: it's not neccessary to quote "$vars", this is Perl, not Bash.
Third: 's/\//\:\:/g' can much better be written as 's#/#::#g'.
#fourth: #self->{_$superclass[1].$superclass[2]} = new $name; #that's not what you want, you want: $self->{ "_$superclass[1].$superclass[2]" } = ...;
Fifth, and most important: what does $name contain at the 'new $name' point? Is there really a package defined in that dynamic module? Did you try "$name->new"?
--In reply to Re: Dynamically load unknown modules
by fruiture
in thread Dynamically load unknown modules
by Ryszard
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |