in reply to Re^2: Entry Widget - validatecommand
in thread Entry Widget - validatecommand
Thanks, AnomalousMonk, for the explanation. Your statement:
the CORE namespace has search precedence.
raises a new question: How, then, does the original code ever find the print sub defined in namespace main if the sub isn’t explicitly qualified with its namespace (i.e., main::print)? Why doesn’t Perl always find CORE::print?
I think I found the answer: the original code works only because it uses a reference to the sub:
-command=> \&print
and in this case the reference is disambiguated using lexical scope. I found an explanation of the latter in the Camel Book, 4th Edition, “Name Lookups,” pages 62–65. Is there any documentation on how Perl looks up subroutine names when a subroutine is actually called (as opposed to being referenced)?
Thanks,
Athanasius <°(((>< contra mundum
|
|---|