Olivier Wirz wrote: > Hello, > > Ich would like to load dynamically a Perl class (late binding). > > For example, if I start a Perl script with a command line parameter like > --sport=SWIMMING, I would like to have something like that (after having > saved SWIMMING via $opt_sport in variable $aSport): > > my $aSport = $opt_sport; > use Classes::$aSport; <----- doesn't work ! > > Who knows a solution. Many thanks. >
not sure what you really trying to do but are you tring to do something like: #!/usr/bin/perl -w package Dog; use strict; use Exporter; our @ISA = qw(Exporter); sub new{ return bless {name => $_[1]} => $_[0]; } sub get_name{ return $_[0]->{name}; } 1; __END__ and then in a driver script: #!/usr/bin/perl -w use strict; print "Enter class name: "; chomp(my $class = <STDIN>); eval<<"CODE"; require $class; my \$obj = \$class->new("pet"); print \$obj->get_name,"\n"; CODE print "$@\n" if($@); __END__ runs: Enter class name: Dog pet loads the Dog class at runtime and prints its name. not sure if that's what you want. david -- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]