Beefy Boxes and Bandwidth Generously Provided by pair Networks chromatic writing perl on a camel
Perl: the Markov chain saw
 
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 (Cardinal) 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 having an uproarious good time at the Monastery: (8)
As of 2014-04-17 22:29 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    April first is:







    Results (458 votes), past polls