use strict; use warnings; my $x='Exports'; eval "use $x"; asub(); #fails if I uncomment the next line - Global symbol "$ascalar" requires explicit package name #print $ascalar, "\n"; #### package Exports; use strict; use warnings; use Exporter; use base 'Exporter'; our @EXPORT = qw( $ascalar asub); our $ascalar = 42; sub asub { print "sub called\n"; } 1;