in reply to Multiple uses

Simple test:
# ModuleA.pm use ModuleB; BEGIN { print "ModuleA::BEGIN\n"; } 1; # ModuleB.pm BEGIN { print "ModuleB::BEGIN\n"; } 1; # main.pl use ModuleA; use ModuleB; BEGIN { print "main::BEGIN\n"; }
Create those 3 files, then run main.pl.
$ perl main.pl ModuleB::BEGIN ModuleA::BEGIN main::BEGIN
It looks like perl does "the right thing".
--
Mike