Beefy Boxes and Bandwidth Generously Provided by pair Networks
Just another Perl shrine
 
PerlMonks  

Answer: Loading modules by external data (i.e., database)

( #16284=categorized answer: print w/ replies, xml ) Need Help??

Q&A > object-oriented programming > Loading modules by external data (i.e., database) contributed by Corion

In my (frozen) file information display tool (a souped up magic program), I used dynamic loading for modules more or less like this :

$handler = eval( "use $modulename; return $modulename->new;" );
(I'm in a hurry, if this one dosen't work, tell me and I'll look up the actual code :))

Comment on Answer: Loading modules by external data (i.e., database)
Download Code
Replies are listed 'Best First'.
RE: Answer: Loading modules by external data (i.e., database)
by Anonymous Monk on Jun 07, 2000 at 21:06 UTC
    That works just fine: $class = "my::Module"; $obj = eval("use $class; return $class->new;"); is the same as use my::Module; $obj = my::Module->new; But why does this work: use my::Module; $obj = my::Module->new($args_ref); When this doesn't: $class = "my::Module"; $obj = eval("use $class; $class->new($args_ref);"); $obj comes back undefined. Any ideas?
Log In?
Username:
Password:

What's my password?
Create A New User
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others taking refuge in the Monastery: (8)
As of 2015-07-30 00:35 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    The top three priorities of my open tasks are (in descending order of likelihood to be worked on) ...









    Results (269 votes), past polls