<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: Adding to DCL$PATH in PERL in Operating System - OpenVMS</title>
    <link>https://community.hpe.com/t5/operating-system-openvms/adding-to-dcl-path-in-perl/m-p/4525547#M43249</link>
    <description>To invalidate my own suggestion:&lt;BR /&gt;no, defining a search list using $ENV() apparently does not work.&lt;BR /&gt;e.g. &lt;BR /&gt; $ENV{"TEST"} = "sys$login:,sys$manager:";&lt;BR /&gt;does define the logical literally, not as a search list, i.e. it is not equivalent to DCL&lt;BR /&gt; DEFINE TEST sys$login:,sys$manager:&lt;BR /&gt;&lt;BR /&gt;Sorry, no perl solution.</description>
    <pubDate>Mon, 02 Nov 2009 13:34:52 GMT</pubDate>
    <dc:creator>Joseph Huber_1</dc:creator>
    <dc:date>2009-11-02T13:34:52Z</dc:date>
    <item>
      <title>Adding to DCL$PATH in PERL</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/adding-to-dcl-path-in-perl/m-p/4525541#M43243</link>
      <description>Hi,&lt;BR /&gt;&lt;BR /&gt;I'm trying to extend DCL$PATH in Perl, but having problems with the new definition persisting outside of Perl itself.&lt;BR /&gt;&lt;BR /&gt;I've included the Perl code inside a DCL command script. &lt;BR /&gt;&lt;BR /&gt;Can anyone see what's wrong?&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;$       PERL SYS$INPUT 'P1'&lt;BR /&gt;$       DECK&lt;BR /&gt;        #!perl -w&lt;BR /&gt;    &lt;BR /&gt;        my $i;&lt;BR /&gt;        for ($i=0; defined $ENV{"DCL\$PATH;$i"}; ++$i) {&lt;BR /&gt;            print $ENV{"DCL\$PATH;$i"} . "\n";&lt;BR /&gt;        }&lt;BR /&gt;    &lt;BR /&gt;        $ENV{"DCL\$PATH;$i"} = uc $ARGV[0];&lt;BR /&gt;&lt;BR /&gt;        print "\n";&lt;BR /&gt;        for ($i=0; defined $ENV{"DCL\$PATH;$i"}; ++$i) {&lt;BR /&gt;            print $ENV{"DCL\$PATH;$i"} . "\n";&lt;BR /&gt;        }&lt;BR /&gt;&lt;BR /&gt;$       EOD&lt;BR /&gt;$!&lt;BR /&gt;$ wr ""&lt;BR /&gt;$ SHO LOG DCL$PATH&lt;BR /&gt;$!&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;Running the script gives:&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;$ @addtopath TEST&lt;BR /&gt;&lt;BR /&gt;SCR&lt;BR /&gt;BIN&lt;BR /&gt;&lt;BR /&gt;SCR&lt;BR /&gt;BIN&lt;BR /&gt;TEST&lt;BR /&gt;&lt;BR /&gt;   "DCL$PATH" = "SCR" (LNM$PROCESS_TABLE)&lt;BR /&gt;        = "BIN"&lt;BR /&gt;1  "SCR" = "U32$:[BASE.SCR]" (LNM$PROCESS_TABLE)&lt;BR /&gt;        = "TMPSCR"&lt;BR /&gt;        = "WORK"&lt;BR /&gt;2  "TMPSCR" = "U32$:[BASE.SCR.TMPSCR]" (LNM$PROCESS_TABLE)&lt;BR /&gt;1  "BIN" = "U32$:[BASE.BIN]" (LNM$PROCESS_TABLE)&lt;BR /&gt;</description>
      <pubDate>Mon, 02 Nov 2009 10:48:57 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/adding-to-dcl-path-in-perl/m-p/4525541#M43243</guid>
      <dc:creator>Jimson_1</dc:creator>
      <dc:date>2009-11-02T10:48:57Z</dc:date>
    </item>
    <item>
      <title>Re: Adding to DCL$PATH in PERL</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/adding-to-dcl-path-in-perl/m-p/4525542#M43244</link>
      <description>Not knowing Perl nor its implementation it's likely that Perl uses a CRTL function to retrieve environment variables: getenv. It is a CRTL feature to make logical names and their translations available as environment variables. It is likely that Perl uses the CRTL functions putenv or setenv to add to the environment. These functions manipulate the run-time environment, which is only valid during the life of the image. Changes in that environment are not written back to the process environment, here your logical DCL$PATH.&lt;BR /&gt;&lt;BR /&gt;This is intended behavior which mimics UNIX behavior, where you can't modify a shell environment variable with setenv or putenv&lt;BR /&gt;&lt;BR /&gt;You need to use or check where Perl uses  functions like lib$get_logical and lib$set_logical.</description>
      <pubDate>Mon, 02 Nov 2009 11:34:41 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/adding-to-dcl-path-in-perl/m-p/4525542#M43244</guid>
      <dc:creator>H.Becker</dc:creator>
      <dc:date>2009-11-02T11:34:41Z</dc:date>
    </item>
    <item>
      <title>Re: Adding to DCL$PATH in PERL</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/adding-to-dcl-path-in-perl/m-p/4525543#M43245</link>
      <description>Hi,&lt;BR /&gt;&lt;BR /&gt;That's not the case as we can see with this slightly modified version of the above script.&lt;BR /&gt;&lt;BR /&gt;P1 is used to extend DCL$PATH and also to define its own logical.&lt;BR /&gt;&lt;BR /&gt;At the end we can see that 'P1' is defined.&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;$ PERL SYS$INPUT 'P1'&lt;BR /&gt;$ DECK&lt;BR /&gt;#!perl -w&lt;BR /&gt;&lt;BR /&gt;my $i;&lt;BR /&gt;for ($i=0; defined $ENV{"DCL\$PATH;$i"}; ++$i) {&lt;BR /&gt;print $ENV{"DCL\$PATH;$i"} . "\n";&lt;BR /&gt;}&lt;BR /&gt;&lt;BR /&gt;$log = uc $ARGV[0];&lt;BR /&gt;$ENV{"DCL\$PATH;$i"} = $log;&lt;BR /&gt;$ENV{$log} = 'Still Testing';&lt;BR /&gt;&lt;BR /&gt;print "\n";&lt;BR /&gt;for ($i=0; defined $ENV{"DCL\$PATH;$i"}; ++$i) {&lt;BR /&gt;print $ENV{"DCL\$PATH;$i"} . "\n";&lt;BR /&gt;}&lt;BR /&gt;&lt;BR /&gt;$ EOD&lt;BR /&gt;$!&lt;BR /&gt;$ wr ""&lt;BR /&gt;$ SHO LOG DCL$PATH&lt;BR /&gt;$ SHO LOG 'P1'&lt;BR /&gt;$!&lt;BR /&gt;&lt;BR /&gt;</description>
      <pubDate>Mon, 02 Nov 2009 11:55:14 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/adding-to-dcl-path-in-perl/m-p/4525543#M43245</guid>
      <dc:creator>Jimson_1</dc:creator>
      <dc:date>2009-11-02T11:55:14Z</dc:date>
    </item>
    <item>
      <title>Re: Adding to DCL$PATH in PERL</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/adding-to-dcl-path-in-perl/m-p/4525544#M43246</link>
      <description>Hmm, so I was wrong in assuming Perl only uses getenv and friends: it depends...&lt;BR /&gt;&lt;BR /&gt;Do a show log DCL*, you should see what your script defined.&lt;BR /&gt;&lt;BR /&gt;There is a section in the perlvms documentation which covers $ENV and how you can influence what is used for $ENV by the logical PERL_ENV_TABLES.</description>
      <pubDate>Mon, 02 Nov 2009 12:57:57 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/adding-to-dcl-path-in-perl/m-p/4525544#M43246</guid>
      <dc:creator>H.Becker</dc:creator>
      <dc:date>2009-11-02T12:57:57Z</dc:date>
    </item>
    <item>
      <title>Re: Adding to DCL$PATH in PERL</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/adding-to-dcl-path-in-perl/m-p/4525545#M43247</link>
      <description>In my perlvms help I read:&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt; In either case, only the first&lt;BR /&gt; value found searching PERL_ENV_TABLES is altered. It is not possible at present to define a search list logical name via  %ENV.&lt;BR /&gt;&lt;BR /&gt;So I assume that &lt;BR /&gt; $ENV{"DCL\$PATH;$i"} = uc $ARGV[0];&lt;BR /&gt;does not work, but&lt;BR /&gt; $ENV{"DCL\$PATH"} = uc $ARGV[0];&lt;BR /&gt;redefines the logical by the argument.&lt;BR /&gt;&lt;BR /&gt;I don't know if newer PerlVMS versions allow to insert into a logical name search least, mine (v5.8.6) at least does not.&lt;BR /&gt;&lt;BR /&gt;So to add an item to the searchlist, loop over the existing definition as You do now, but add each item to a local variable, adding  a "," to before, then finally add the new variable from the arglist, and do the $ENV() = from that variable.&lt;BR /&gt;</description>
      <pubDate>Mon, 02 Nov 2009 13:12:07 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/adding-to-dcl-path-in-perl/m-p/4525545#M43247</guid>
      <dc:creator>Joseph Huber_1</dc:creator>
      <dc:date>2009-11-02T13:12:07Z</dc:date>
    </item>
    <item>
      <title>Re: Adding to DCL$PATH in PERL</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/adding-to-dcl-path-in-perl/m-p/4525546#M43248</link>
      <description>Hmm, still doesn't work.&lt;BR /&gt;&lt;BR /&gt;DCL$PATH becomes equal to the entire concatenated string.&lt;BR /&gt;&lt;BR /&gt;P_CC(H9-ACT)$ sho log DCL$PATH&lt;BR /&gt;   "DCL$PATH" = "SCR,BIN,TEST" (LNM$PROCESS_TABLE)&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;Guess I'll just have to download and use the VMS::Logical module.&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;OK thanks Guys.&lt;BR /&gt;</description>
      <pubDate>Mon, 02 Nov 2009 13:31:31 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/adding-to-dcl-path-in-perl/m-p/4525546#M43248</guid>
      <dc:creator>Jimson_1</dc:creator>
      <dc:date>2009-11-02T13:31:31Z</dc:date>
    </item>
    <item>
      <title>Re: Adding to DCL$PATH in PERL</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/adding-to-dcl-path-in-perl/m-p/4525547#M43249</link>
      <description>To invalidate my own suggestion:&lt;BR /&gt;no, defining a search list using $ENV() apparently does not work.&lt;BR /&gt;e.g. &lt;BR /&gt; $ENV{"TEST"} = "sys$login:,sys$manager:";&lt;BR /&gt;does define the logical literally, not as a search list, i.e. it is not equivalent to DCL&lt;BR /&gt; DEFINE TEST sys$login:,sys$manager:&lt;BR /&gt;&lt;BR /&gt;Sorry, no perl solution.</description>
      <pubDate>Mon, 02 Nov 2009 13:34:52 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/adding-to-dcl-path-in-perl/m-p/4525547#M43249</guid>
      <dc:creator>Joseph Huber_1</dc:creator>
      <dc:date>2009-11-02T13:34:52Z</dc:date>
    </item>
    <item>
      <title>Re: Adding to DCL$PATH in PERL</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/adding-to-dcl-path-in-perl/m-p/4525548#M43250</link>
      <description>Nearly a Perl solution...&lt;BR /&gt;&lt;BR /&gt;I did what you said and then passed back to DCL the concatenated string as a local symbol, using the DCLSym module.&lt;BR /&gt;&lt;BR /&gt;This I then simply expanded into a DCL DEFINE command.&lt;BR /&gt;&lt;BR /&gt;And here it is:&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;$       PERL SYS$INPUT 'P1'&lt;BR /&gt;$       DECK&lt;BR /&gt;&lt;BR /&gt;        #!perl -w&lt;BR /&gt;        use VMS::DCLsym;&lt;BR /&gt;        tie %sym, VMS::DCLsym;&lt;BR /&gt;        &lt;BR /&gt;        my $i;&lt;BR /&gt;        for ($i=0; defined $ENV{"DCL\$PATH;$i"}; ++$i) {&lt;BR /&gt;            push @tab, $ENV{"DCL\$PATH;$i"};&lt;BR /&gt;        }&lt;BR /&gt;        &lt;BR /&gt;        push @tab, uc $ARGV[0];&lt;BR /&gt;&lt;BR /&gt;        $sym{dcl_path} = join ",", @tab;&lt;BR /&gt;&lt;BR /&gt;$       EOD&lt;BR /&gt;$!&lt;BR /&gt;$ define /nolog /process DCL$PATH 'dcl_path'&lt;BR /&gt;$!</description>
      <pubDate>Mon, 02 Nov 2009 14:02:12 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/adding-to-dcl-path-in-perl/m-p/4525548#M43250</guid>
      <dc:creator>Jimson_1</dc:creator>
      <dc:date>2009-11-02T14:02:12Z</dc:date>
    </item>
    <item>
      <title>Re: Adding to DCL$PATH in PERL</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/adding-to-dcl-path-in-perl/m-p/4525549#M43251</link>
      <description>When this:&lt;BR /&gt;&lt;BR /&gt;$ define /nolog /process DCL$PATH 'dcl_path'&lt;BR /&gt;&lt;BR /&gt;is invoked within the context of a spawned subprocess, the definition will immediately vaporize upon subprocess exit.&lt;BR /&gt;&lt;BR /&gt;You could use /JOB to get broader definition, and which will be retained after subprocess (and main process) termination.&lt;BR /&gt;&lt;BR /&gt;If you want to alter the current process context, then use a call to lib$set_logical or analogous.&lt;BR /&gt;&lt;BR /&gt;if you're going to work within this area of OpenVMS, you will need to know some details of how DCL symbols and logical names and subprocesses work (and don't work) together, or you're going to get confused.  (Well, I got confused when I first ran into this stuff.)  This whole area is a little cryptic when first encountered (and particularly if you're used to how Unix works), but the propagation (inheritance) rules aren't all that complex within OpenVMS.  But they can also and most definitely derail some design approaches.&lt;BR /&gt;</description>
      <pubDate>Mon, 02 Nov 2009 15:16:49 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/adding-to-dcl-path-in-perl/m-p/4525549#M43251</guid>
      <dc:creator>Hoff</dc:creator>
      <dc:date>2009-11-02T15:16:49Z</dc:date>
    </item>
    <item>
      <title>Re: Adding to DCL$PATH in PERL</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/adding-to-dcl-path-in-perl/m-p/4525550#M43252</link>
      <description>The above solution works fine!&lt;BR /&gt;&lt;BR /&gt;Running Perl does not spawn a sub process and thus a JOB logical is not required.&lt;BR /&gt;&lt;BR /&gt;Its Perl I'm learning, not VMS.&lt;BR /&gt;&lt;BR /&gt;And FYI I've been programming on VMS environments for 20 years. &lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;</description>
      <pubDate>Mon, 02 Nov 2009 15:30:19 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/adding-to-dcl-path-in-perl/m-p/4525550#M43252</guid>
      <dc:creator>Jimson_1</dc:creator>
      <dc:date>2009-11-02T15:30:19Z</dc:date>
    </item>
    <item>
      <title>Re: Adding to DCL$PATH in PERL</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/adding-to-dcl-path-in-perl/m-p/4525551#M43253</link>
      <description>As folks have figured out, you can't create search list logicals using %ENV within Perl.  There is a syntax for *reading* search list logicals, but not creating them.&lt;BR /&gt;&lt;BR /&gt;The reason for that is that in order to get past the 255-byte limitation on equivalence names, all of the elements of a search list are treated as one big long string so you effectively have 255 * 127 bytes for your value.  In other words, if you assign a value to %ENV longer than 255 bytes, the pieces will be broken into chunks and stored as elements of the search list, then transparently pasted back together on lookup;&lt;BR /&gt;&lt;BR /&gt;$ perl -e "$ENV{FOO} = 'Z' x (255 * 3);"&lt;BR /&gt;$ sho log foo&lt;BR /&gt;   "FOO" = "ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ&lt;BR /&gt;ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ&lt;BR /&gt;ZZZ" (LNM$PROCESS_TABLE)&lt;BR /&gt;        = "ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ&lt;BR /&gt;ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ&lt;BR /&gt;ZZ"&lt;BR /&gt;        = "ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ&lt;BR /&gt;ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ&lt;BR /&gt;ZZ"&lt;BR /&gt;$ perl -e "print $ENV{FOO};"&lt;BR /&gt;ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ&lt;BR /&gt;ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ&lt;BR /&gt;ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ&lt;BR /&gt;ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ&lt;BR /&gt;ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ&lt;BR /&gt;ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ&lt;BR /&gt;$ &lt;BR /&gt;&lt;BR /&gt;The exception is the special PERL5LIB logical that tells Perl where to look for libraries: that one is always treated as a genuine search list.&lt;BR /&gt;&lt;BR /&gt;The problem at hand is probably best solved by VMS::Logical.  FWIW, Perl 5.10.1 is current.</description>
      <pubDate>Mon, 02 Nov 2009 17:51:35 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/adding-to-dcl-path-in-perl/m-p/4525551#M43253</guid>
      <dc:creator>Craig A Berry</dc:creator>
      <dc:date>2009-11-02T17:51:35Z</dc:date>
    </item>
    <item>
      <title>Re: Adding to DCL$PATH in PERL</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/adding-to-dcl-path-in-perl/m-p/4525552#M43254</link>
      <description>&amp;gt;Running Perl does not spawn a sub process&lt;BR /&gt;&amp;gt; and thus a JOB logical is not required. &lt;BR /&gt;&lt;BR /&gt;  but what access mode does Perl use to define logical names? If they're in the process table at user mode, they will vaporise on image exit.&lt;BR /&gt;&lt;BR /&gt;  Use SHOW LOGICAL/FULL to include access mode, and add a wildcard to the end of the name to display the name at all access modes. &lt;BR /&gt;&lt;BR /&gt;  You might be able to SPAWN (ie Perl "system()") a SHOW LOGICAL/FULL command to see your user mode definition. Although you'll be looking at the process table of the subprocess, it should be a clone of the parent's table.</description>
      <pubDate>Mon, 02 Nov 2009 20:20:41 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/adding-to-dcl-path-in-perl/m-p/4525552#M43254</guid>
      <dc:creator>John Gillings</dc:creator>
      <dc:date>2009-11-02T20:20:41Z</dc:date>
    </item>
    <item>
      <title>Re: Adding to DCL$PATH in PERL</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/adding-to-dcl-path-in-perl/m-p/4525553#M43255</link>
      <description>When Perl is storing the environment array in logical names (not the only option) it sets those logicals in supervisor mode.  This is handy when mixing and matching Perl with native VMS utilities and helps make Perl a viable DCL replacement in some circumstances.  It causes trouble when scripts ported from Unix assume that the contents of the environment array disappear at program exit.&lt;BR /&gt;&lt;BR /&gt;I've sometimes wondered whether we should implement a mode option so that people who want the logicals to go away at image run-down would have the ability to do so.</description>
      <pubDate>Mon, 02 Nov 2009 21:29:09 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/adding-to-dcl-path-in-perl/m-p/4525553#M43255</guid>
      <dc:creator>Craig A Berry</dc:creator>
      <dc:date>2009-11-02T21:29:09Z</dc:date>
    </item>
    <item>
      <title>Re: Adding to DCL$PATH in PERL</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/adding-to-dcl-path-in-perl/m-p/4525554#M43256</link>
      <description>Isn't that USER mode?</description>
      <pubDate>Tue, 01 Dec 2009 01:49:25 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/adding-to-dcl-path-in-perl/m-p/4525554#M43256</guid>
      <dc:creator>Cass Witkowski</dc:creator>
      <dc:date>2009-12-01T01:49:25Z</dc:date>
    </item>
  </channel>
</rss>

