in reply to Variable Package Names?

If you consider using chromatic's first idea, I'd suggest that you re-work it like so:
#!/usr/bin/perl -w use strict; BEGIN { my @packages = qw(test test2); my @vars = qw(first second); populate(); sub populate { my $text = ''; foreach my $package (@packages) { foreach my $var (@vars) { $text .= '$' . $package . '::' . $var . ' = 1;' . "\n" +; } } print $text; eval $text; } } print "test:\t$test::first\t$test::second\n"; print "test2:\t$test2::first\t$test2::second\n";
... this way, you move the eval() outside the loop, which I understand improves performance significantly.

Alan "Hot Pastrami" Bellows
-Sitting calmly with scissors-