use calls
require and the module's
import method. The global %INC hash is checked when
require is called, so the file is only executed once, but
import is always called. This is so that when 'use Module' (with or without an import list) is in more than one package, symbols can be imported into each package the 'use Module' appears in. You can however, fool
require if you really want to:
use Module; # Say Module.pm is in current directory
require "./Module.pm";
for my $file (keys %INC) {
print "$file $INC{$file}\n";
}
# Prints
Module.pm Module.pm
./Module.pm ./Module.pm