in reply to Re: perlfunc index name conflict
in thread perlfunc index name conflict
This outputs:use warnings; use strict; use warnings; use PDL; print index('hello world', 'lo w'), "\n";
If we comment out the "use PDL;" we then get the expected output of "3".Argument "hello world" isn't numeric in subroutine entry at try.pl lin +e 7. Argument "lo w" isn't numeric in subroutine entry at try.pl line 7. 0
andPDL includes about a dozen perl modules that form the core of the language, plus additional modules that add further functionality. The perl module "PDL" loads all of the core modules automatically, making their functions available in the current perl namespace.
So this *is* documented ... and it seems that the recommended solution is to "use PDL::Lite;".Exports "use PDL;" exports a large number of routines into the calling namespace. If you want to avoid namespace pollution, you must instead "use PDL::Lite", and include any additional modules explicitly.
|
|---|