Clear questions and runnable code get the best and fastest answer |
|
PerlMonks |
Re^2: "Text" does something.by Jenda (Abbot) |
on Mar 24, 2013 at 02:03 UTC ( [id://1025102]=note: print w/replies, xml ) | Need Help?? |
If there already is a package Foo in the running program, then "whatever Foo;" is assumed to mean call to static method whatever() in package Foo. If it's not and use strict is not in effect, the "Foo" is considered a bareword and the subroutine import() in current package is called and the string "Foo" is passed as the first parameter. In this particular case the module File::Basename is loaded by CPAN.pm or one of its dependencies, so Perl assumes you meant the first meaning. It's preferable to use Foo->import() is you mean the static method call and import("Foo") if you mean the subroutine call. Jenda
In Section
Seekers of Perl Wisdom
|
|