Beefy Boxes and Bandwidth Generously Provided by pair Networks
Think about Loose Coupling
 
PerlMonks  

Does %INC always have Unix-style paths?

by jthalhammer (Friar)
on Aug 30, 2006 at 02:59 UTC ( #570294=perlquestion: print w/ replies, xml ) Need Help??
jthalhammer has asked for the wisdom of the Perl Monks concerning the following question:

Under most circumstances, the keys of %INC are the paths to the modules that have been loaded into the interpreter. I've been told that these paths are always Unix-style (i.e. forward slashes), regardless of the platform that it is actually running on. Is this true?

-Jeff

Comment on Does %INC always have Unix-style paths?
Re: Does %INC always have Unix-style paths?
by GrandFather (Sage) on Aug 30, 2006 at 03:13 UTC

    The key you require is "If EXPR is a bareword, the require assumes a ``.pm'' extension and replaces ``::'' with ``/'' in the filename for you, to make it easy to load standard modules. This form of loading of modules does not risk altering your namespace." (from require). See also %INC and @INC.

    Update which doesn't actually say anything about it. However:

    use lib ".\\"; print "$_\n" for @INC;

    Prints:

    .\ C:\Program Files\ActiveState Komodo 3.5\lib\support\dbgp\perllib C:/Perl/lib C:/Perl/site/lib .

    On an XP system and:

    print "$_ => $INC{$_}\n" for keys %INC; prints in part: IO/Socket/UNIX.pm => C:/Perl/lib/IO/Socket/UNIX.pm IO.pm => C:/Perl/lib/IO.pm Carp.pm => C:/Perl/lib/Carp.pm bytes.pm => C:/Perl/lib/bytes.pm DB/RedirectStdOutput.pm => C:\Program Files\ActiveState Komodo 3.5\lib +\support\dbgp\perllib/DB/RedirectStdOutput.pm

    DWIM is Perl's answer to Gödel
Re: Does %INC always have Unix-style paths?
by Anonymous Monk on Aug 31, 2006 at 07:11 UTC
    Yes, as long as you avoid writing
    $INC{q,ha\\ha\\ha\\ha.pm,} = q,I'm a bad bad boy,;
    which should be written as
    $INC{q,ha/ha/ha/ha.pm,} = q,I'm a bad bad boy,;

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: perlquestion [id://570294]
Approved by chargrill
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others avoiding work at the Monastery: (6)
As of 2015-07-04 05:34 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    The top three priorities of my open tasks are (in descending order of likelihood to be worked on) ...









    Results (57 votes), past polls