in reply to Running DCL in Perl

I confess that I learned Perl on a VMS system. I second elian's recommendations for where to get information.

In particular, I would recommend reading the documentation perlport, as this contains some very good guidelines for writing code to run on non-Unix platforms.

I remember DCL, in fact I remember some monster .COM file I wrote before touching perl. You will find perl a refreshing change. It will run faster, be much less machine intensive as most of what you need can be done inside perl without spawning out (though you can spawn for the really difficult stuff). No 255 byte limit on strings (hurray!) No horrible doubling up of quotes.

The biggest gotcha will be in file specifications. You have a choice of syntax, as you can use Unix (POSIX) style filespec syntax with slashes, or the native VMS one. But don't mix them! A lot depends on who or what is providing you with filespecs.

The next biggest gotcha is with line termination munging and the record attributes. When it comes to line termination conventions, VMS tries to be all things to everyone, so any files you create from Perl will be STREAM_LF (unless they are binmoded).

Also note that whereas testing on VMS is included for the perl core, many CPAN modules break if they have not followed the rules in perlport. but there is a mechanism http://rt.cpan.org for reporting this to the module authors.

Good luck in your endeavours.

--
I'm Not Just Another Perl Hacker