Re: [PATCH] prime_env_iter and zero-length values on VMS

2004-07-22 Thread Nicholas Clark
On Wed, Jul 14, 2004 at 04:43:09PM -0500, Craig Berry wrote:
  
 On Wednesday, July 14, 2004, at 03:53PM, Nicholas Clark [EMAIL PROTECTED] wrote:
 
 Given that this patch is entirely in the VMS code, I don't mind putting it
 into 5.8.5, because it can't affect anything other than VMS, and you have
 a much better idea of what's sane for VMS than I do. [Plus I can point at
 you if it goes wrong :-)] So should it go in?
 
 Yes, please.  Can I point at you if anything other than this goes wrong? ;-)

Everyone else will, so I don't see why you shouldn't.

Nicholas Clark


Re: New member, and a patch for File::Spec::VMS

2004-07-22 Thread Craig A. Berry
At 12:15 AM +0200 7/23/04, Richard Levitte - VMS Whacker wrote:
Hello,

Welcome back.

[ File::Spec-splitpath problems snipped ]

As can be seen, there are things that don't really happen, like
[BAR.COOKIE.BANANA.--] only got changed to [BAR.COOKIE.-], not [BAR]
(basically, the current VMS.pm doesn't handle multiple dashes very
well).  Also, I noticed that things like FOO.00] would be
converted to FOO], which I think is an absolute no-no (you CAN have a
00.DIR), only [00.][, .][00] and [00. should be
reduced.  While I'm at it,  and  should be changed to [ and ].

My patch (attached as VMD.pm.diff, produced with diff -u) makes the
above errors go away.  I've based the things I do on a decade of
experience with VMS, having hacked similar things a long time ago in
GNU emacs and so on.

Excellent.  I've long thought that section of code looked crufty and
needed an overhaul.  Just for the record, what version of Perl are
you using?  Did you rerun the entire test suite after your patch and
see any failures?  I will run some tests in any case just to make
sure nothing is depending on the broken behavior.

-- 

Craig A. Berry
mailto:[EMAIL PROTECTED]

... getting out of a sonnet is much more
 difficult than getting in.
 Brad Leithauser


Anyone still using OpenVMS/VAX 6.2?

2004-07-22 Thread Thomas Pfau
At work, our application still runs on VMS 6.2 on VAX systems.  I 
installed perl 5.8.0 last year and don't remember having any problems.  
Alas, I must have deleted the source tree after a successful build 
because I can't find them or any traces of the build other than the 
PERL_ROOT directory tree.

Anyway, I recently found SIMH (http://simh.trailing-edge.com/) and 
decided to give it a workout.  I figured I'd install 6.2 first since 
that's the version I'm familiar with and maybe later I could move to 
7.3.  A new VMS install needs a new perl install so I figured I'd try to 
build 5.8.4.  I hit errors during the build on both SIMH and the real 
VAXen at work.

The first problem I hit during the build was an attempt to use 
ioctl(SIOCATMARK).  VMS 6.2 doesn't support ioctl().  I ended up writing 
a vms_siocatmark() function using a QIO to plug into [.ext.io]io.xs.

The second problem was with Time::HiRes.  Although VMS 6.2 does not have 
many (if any) of the functions needed by this module, it's included in 
the default list of modules to build.  I reconfigured without this 
module but the test phase still tried to reference it.

Lastly, several tests failed.  MMS TEST doesn't reveal much information 
about failures so I tried using harness.  There were several things 
along the lines of 'unrecognized command verb \ECHO\' but also some real 
failures.  op/pack failed with what appears to be a floating point 
overflow.  Several Tie::File, Math::BigInt and Math::BigRat tests 
failed.  I can post the errors from the build logs if anyone is interested.

Does anyone know if any of these errors are serious?  Are they worth 
looking into or am I the last diehard still trying to use perl on 
VAX/VMS 6.2?


Re: New member, and a patch for File::Spec::VMS

2004-07-22 Thread Richard Levitte - VMS Whacker
In message [EMAIL PROTECTED] on Thu, 22 Jul 2004 17:51:41 -0500, Craig A. Berry 
[EMAIL PROTECTED] said:

craigberry At 12:15 AM +0200 7/23/04, Richard Levitte - VMS Whacker wrote:
craigberry Hello,
craigberry 
craigberry Welcome back.

back?  Was I ever on this list before?  Or oh, do you mean to the
VMS world?  Been there the whole time, just been silent for a while
:-).

craigberry Excellent.  I've long thought that section of code looked
craigberry crufty and needed an overhaul.  Just for the record, what
craigberry version of Perl are you using?

5.8.1 (the one that comes with the VMS Freeware CD 6.0).

craigberry Did you rerun the entire test suite after your patch and
craigberry see any failures?  I will run some tests in any case just
craigberry to make sure nothing is depending on the broken behavior.

Uhmm, *cough*, I didn't run the Perl tests, actually...  heh.  I'm an
oldie when it comes to VMS, but when it comes to hacking Perl
internals and the proper procedures thereoff, I'm a bit new...

I'll see what I can do, but I'd rather avoid a rebuild if possible...

-
Please consider sponsoring my work on free software.
See http://www.free.lp.se/sponsoring.html for details.

-- 
Richard Levitte | http://richard.levitte.org/ | Tunnlandsv. 52
Levitte Programming | http://www.lp.se/   | S-168 36 Bromma
T: +46-708-26 53 44 | | SWEDEN
 Price, performance, quality...  choose the two you like


Re: New member, and a newer patch for File::Spec::VMS

2004-07-22 Thread Richard Levitte - VMS Whacker
Hmm, I found a small bug.  A file spec. []FOO wasn't reduced to FOO by
my changes.  The attached patch contains one more line that takes care
of that particular thing.

I'm going through the rest of File::Spec::VMS right now, finding more
things that aren't at all consistent with proper directory mangling on
VMS.  There will be more patches, one for each function I correct...

Cheers,
Richard

-
Please consider sponsoring my work on free software.
See http://www.free.lp.se/sponsoring.html for details.

-- 
Richard Levitte | http://richard.levitte.org/ | Tunnlandsv. 52
Levitte Programming | http://www.lp.se/   | S-168 36 Bromma
T: +46-708-26 53 44 | | SWEDEN
 Price, performance, quality...  choose the two you like
--- /usr/share/perl/5.8.4/File/Spec/VMS.pm  2004-05-11 16:59:22.0 +0200
+++ VMS.pm  2004-07-23 01:58:24.0 +0200
@@ -155,16 +155,35 @@
   else  { return vmsify($path);  }
 }
 else {
-  $path =~ s/([\[])00\./$1/g;  # [00.foo == [foo
-  $path =~ s/([^-]+)\.(\]\[|)?00([\]\])/$1$3/g;  # foo.00] == foo]
-  $path =~ s-\]\[--g;  $path =~ s///g;# foo.][bar   == foo.bar
-  1 while $path =~ s{([\[-])\.-}{$1-}; # [.-.-   == [--
-  $path =~ s/\.[^\[\.]+\.-([\]\])/$1/;# bar.foo.-]  == bar]
-  $path =~ s/([\[])(-+)/$1 . \cx x length($2)/e; # encode leading '-'s
-  $path =~ s/([\[\.])([^\[\.\cx]+)\.-\.?/$1/g;# bar.-.foo   == foo
-  $path =~ s/([\[])(\cx+)/$1 . '-' x length($2)/e; # then decode
-  $path =~ s/^[\[\]]{2}//;# []foo   == foo
-  return $path;
+   $path =~ tr//[]/; #  and== [ and ]
+   $path =~ s/\]\[\./\.\]\[/g; # ][.   == .][
+   $path =~ s/\[00\.\]\[/\[/g; # [00.][== [
+   $path =~ s/\[00\./\[/g; # [00.  == [
+   $path =~ s/\.\]\[00\]/\]/g; # .][00]== ]
+   $path =~ s/\.\]\[/\./g; # foo.][bar == foo.bar
+   while ($path =~ s/([\[\.])(-+)\.(-+)([\.\]])/$1$2$3$4/) {}
+   # That loop does the following
+   # with any amount of dashes:
+   # .-.-. == .--.
+   # [-.-. == [--.
+   # .-.-] == .--]
+   # [-.-] == [--]
+   while ($path =~ s/([\[\.])[^\]\.]+\.-(-+)([\]\.])/$1$2$3/) {}
+   # That loop does the following
+   # with any amount (minimum 2)
+   # of dashes:
+   # .foo.--.  == .-.
+   # .foo.--]  == .-]
+   # [foo.--.  == [-.
+   # [foo.--]  == [-]
+   #
+   # And then, the remaining cases
+   $path =~ s/\.[^\]\.]+\.-\./\./g;# .foo.-.   == .
+   $path =~ s/\[[^\]\.]+\.-\./\[/g;# [foo.-.   == [
+   $path =~ s/\.[^\]\.]+\.-\]/\]/g;# .foo.-]   == ]
+   $path =~ s/\[[^\]\.]+\.-\]/\[\]/g;  # [foo.-]   == []
+   $path =~ s/\[\]//;  # []==
+   return $path;
 }
 }
 


Re: New member, and a newer patch for File::Spec::VMS

2004-07-22 Thread John E. Malmberg
Richard Levitte - VMS Whacker wrote:
Hmm, I found a small bug.  A file spec. []FOO wasn't reduced to FOO by
my changes.  The attached patch contains one more line that takes care
of that particular thing.
I'm going through the rest of File::Spec::VMS right now, finding more
things that aren't at all consistent with proper directory mangling on
VMS.  There will be more patches, one for each function I correct...
While you are in the area, I submitted a patch to 5.8.4 release 
candidate that gets Perl to almost honor the C feature logicals.

This is apparently needed to build the version of GTK+ that is used for 
Mozilla.

To make the patch complete, the File::Spec::VMS needs to also be 
modified to look at what the C feature logicals were before Perl 
started, and and if they were the set to (IIRC) DECC$FILENAME_UNIX_ONLY 
or DECC$FILENAME_REPORT_UNIX, do the parse like it was UNIX, and display 
the filespec as if it were UNIX.

I do not know enough about Perl programming to make those changes myself.
-John
[EMAIL PROTECTED]
Personal Opinion Only


Re: New member, and a newer patch for File::Spec::VMS

2004-07-22 Thread Richard Levitte - VMS Whacker
In message [EMAIL PROTECTED] on Thu, 22 Jul 2004 20:38:49 -0400, John E. Malmberg 
[EMAIL PROTECTED] said:

wb8tyw Richard Levitte - VMS Whacker wrote:
wb8tyw  Hmm, I found a small bug.  A file spec. []FOO wasn't reduced
wb8tyw  to FOO by my changes.  The attached patch contains one more
wb8tyw  line that takes care of that particular thing.
wb8tyw  
wb8tyw  I'm going through the rest of File::Spec::VMS right now,
wb8tyw  finding more things that aren't at all consistent with
wb8tyw  proper directory mangling on VMS.  There will be more
wb8tyw  patches, one for each function I correct...
wb8tyw 
wb8tyw While you are in the area, I submitted a patch to 5.8.4 release 
wb8tyw candidate that gets Perl to almost honor the C feature
wb8tyw logicals.

I've yet to be able to build 5.8.4 on my VAX (VMS 7.2, DEC C 6.2-003,
anyone been able to build on that combination?), but I'll try it out
on the Alphas I have access to when I got a little more time.

wb8tyw This is apparently needed to build the version of GTK+ that is
wb8tyw used for Mozilla.
wb8tyw 
wb8tyw To make the patch complete, the File::Spec::VMS needs to also
wb8tyw be modified to look at what the C feature logicals were before
wb8tyw Perl started, and and if they were the set to (IIRC)
wb8tyw DECC$FILENAME_UNIX_ONLY or DECC$FILENAME_REPORT_UNIX, do the
wb8tyw parse like it was UNIX, and display the filespec as if it were
wb8tyw UNIX.

Oh...  Hmm, feels a bit hairy, but can probably be done by calling
some appropriate function in the proper places...  I've got other
things on my platter right now, and all I'm currently after is to have
File::Spec::VMS behave properly with VMSy file specs.

wb8tyw I do not know enough about Perl programming to make those
wb8tyw changes myself.

Hmm, if I'm gonna get involved at a deeper level, it will take some
monetary contribution.  I currently live on bare minimums (the
consulting business is harsch right now), so I only spend time on my
needs...

Cheers,
Richard

-
Please consider sponsoring my work on free software.
See http://www.free.lp.se/sponsoring.html for details.

-- 
Richard Levitte | http://richard.levitte.org/ | Tunnlandsv. 52
Levitte Programming | http://www.lp.se/   | S-168 36 Bromma
T: +46-708-26 53 44 | | SWEDEN
 Price, performance, quality...  choose the two you like


Quick patch for File::Spec::VMS::splitdir

2004-07-22 Thread Richard Levitte - VMS Whacker
The following script gave quite ugly results.  Some perfectly legal
names got split up badly.  I admit that the test was very specially
targeted to the things I could see *would* go wrong.

-- SPLITDIR-TEST.PL --
   use File::Spec;
   
   foreach my $d (
  FOO.BAR,
  [FOO.BAR],
  FOO-.--BAR,
  FOO---.-.BAR,
  FOO.---.BAR,
  FOO---BAR,
  FOO.][00.BAR],
  ) {
   print splitdir(,$d,) == (, join(, ,File::Spec-splitdir($d)),)\n;
   }
--
   $ perl splitdir-test.pl
   splitdir(FOO.BAR) == (FOO, BAR)
   splitdir([FOO.BAR]) == (FOO, BAR)
   splitdir(FOO-.--BAR) == (FOO-, -, -BAR)
   splitdir(FOO---.-.BAR) == (FOO-, --, -, BAR)
   splitdir(FOO.---.BAR) == (FOO, -, --, BAR)
   splitdir(FOO---BAR) == (FOO-, --BAR)
   splitdir(FOO.][00.BAR]) == (FOO, 00, BAR])
--

Yup, dashes that are parts of names (like FOO---) get (incompletely,
for what was intended) split up, and .---. didn't get entirely split
up.  Also, in the last split, 00 should not be there.

The attached patch fixes those problems, and possibly more.  The
result is much more what I would expect:

--
   $ perl -IUSER:[LEVITTE.WRK.PERL-HACKS] splitdir-test.pl
   splitdir(FOO.BAR) == (FOO, BAR)
   splitdir([FOO.BAR]) == (FOO, BAR)
   splitdir(FOO-.--BAR) == (FOO-, --BAR)
   splitdir(FOO---.-.BAR) == (FOO---, -, BAR)
   splitdir(FOO.---.BAR) == (FOO, -, -, -, BAR)
   splitdir(FOO---BAR) == (FOO---BAR)
   splitdir(FOO.][00.BAR]) == (FOO, BAR])
--

Cheers,
Richard

-
Please consider sponsoring my work on free software.
See http://www.free.lp.se/sponsoring.html for details.

-- 
Richard Levitte | http://richard.levitte.org/ | Tunnlandsv. 52
Levitte Programming | http://www.lp.se/   | S-168 36 Bromma
T: +46-708-26 53 44 | | SWEDEN
 Price, performance, quality...  choose the two you like
--- File/Spec/VMS.pm2004-07-23 02:41:53.0 +0200
+++ VMS.pm  2004-07-23 02:41:15.0 +0200
@@ -370,7 +370,19 @@
 
 sub splitdir {
 my($self,$dirspec) = @_;
-$dirspec =~ s/\]\[//g;  $dirspec =~ s/\-\-/-.-/g;
+$dirspec =~ tr//[]/; #  and== [ and ]
+$dirspec =~ s/\]\[\./\.\]\[/g; # ][.   == .][
+$dirspec =~ s/\[00\.\]\[/\[/g; # [00.][== [
+$dirspec =~ s/\[00\./\[/g; # [00.  == [
+$dirspec =~ s/\.\]\[00\]/\]/g; # .][00]== ]
+$dirspec =~ s/\.\]\[/\./g; # foo.][bar == foo.bar
+while ($dirspec =~ s/(^|[\[\\.])\-(\-+)($|[\]\\.])/$1-.$2$3/g) {}
+   # That loop does the following
+   # with any amount of dashes:
+   # .--.  == .-.-.
+   # [--.  == [-.-.
+   # .--]  == .-.-]
+   # [--]  == [-.-]
 $dirspec = [$dirspec] unless $dirspec =~ /[\[]/; # make legal
 my(@dirs) = split('\.', vmspath($dirspec));
 $dirs[0] =~ s/^[\[]//s;  $dirs[-1] =~ s/[\]]\Z(?!\n)//s;


Re: Quick patch for File::Spec::VMS::splitdir

2004-07-22 Thread Richard Levitte - VMS Whacker
All right, that concludes what I had enough energy for tonight.  The
rest looks like it will take some more thinking to check, and
honestly, at 3am, I'm not up for it.

I'll be back :-).

Cheers,
Richard

-
Please consider sponsoring my work on free software.
See http://www.free.lp.se/sponsoring.html for details.

-- 
Richard Levitte | http://richard.levitte.org/ | Tunnlandsv. 52
Levitte Programming | http://www.lp.se/   | S-168 36 Bromma
T: +46-708-26 53 44 | | SWEDEN
 Price, performance, quality...  choose the two you like


Re: New member, and a newer patch for File::Spec::VMS

2004-07-22 Thread John E. Malmberg
Richard Levitte - VMS Whacker wrote:
In message [EMAIL PROTECTED] on Thu, 22 Jul 2004 20:38:49 -0400,
John E. Malmberg [EMAIL PROTECTED] said:
I've yet to be able to build 5.8.4 on my VAX (VMS 7.2, DEC C 6.2-003,
anyone been able to build on that combination?), but I'll try it out
on the Alphas I have access to when I got a little more time.
DEC C V6.4-005 is the current C compiler.
Perl 5.8.4 will build on VAX 7.3, but IIRC will only pass about 68% of 
the tests.  It looks like a lot of the problems are in multi-byte 
character support.
 
wb8tyw I do not know enough about Perl programming to make those
wb8tyw changes myself.
Hmm, if I'm gonna get involved at a deeper level, it will take some
monetary contribution.  I currently live on bare minimums (the
consulting business is harsch right now), so I only spend time on my
needs...
I have a work-a-round, a hacked version of a different .pm file and 
changing a logical name for the perl libraries to find it before it 
finds the Perl ones.

My main motivation is that I am trying to find time to build Mozilla 
from sources, and discovered that a hacked version of Perl was 
previously needed.  I have not yet had time to try to build GTK+ with 
Perl 5.8.4.

I have also started working again on getting rsync to run on OpenVMS. 
It requires replacing a few fork()ing things with some threads.  At this 
point I have a barely functional client that can pull down the daily 
rsync updates.

Cheers,
Richard
-
Please consider sponsoring my work on free software.
See http://www.free.lp.se/sponsoring.html for details.
Hope the consulting business picks up over there.
-John
[EMAIL PROTECTED]
Personal Opinion Only


Re: Anyone still using OpenVMS/VAX 6.2?

2004-07-22 Thread Craig A. Berry
At 7:10 PM -0400 7/22/04, Thomas Pfau wrote:
At work, our application still runs on VMS 6.2 on VAX systems.  I installed perl 
5.8.0 last year and don't remember having any problems.  Alas, I must have deleted 
the source tree after a successful build because I can't find them or any traces of 
the build other than the PERL_ROOT directory tree.

Anyway, I recently found SIMH (http://simh.trailing-edge.com/) and decided to give it 
a workout.  I figured I'd install 6.2 first since that's the version I'm familiar 
with and maybe later I could move to 7.3.  A new VMS install needs a new perl install 
so I figured I'd try to build 5.8.4.  I hit errors during the build on both SIMH and 
the real VAXen at work.

5.8.5 came out a couple of days ago but is unlikely to help with your
situation as no recent testing I'm aware of has been done on VAX or
on pre 7.x VMS.

The first problem I hit during the build was an attempt to use ioctl(SIOCATMARK).  
VMS 6.2 doesn't support ioctl().  I ended up writing a vms_siocatmark() function 
using a QIO to plug into [.ext.io]io.xs.

Good golly.  That sounds like a seriously useful bit of backporting
for folks in a similar situation.  It shouldn't be too hard to
determine from the appropriate appendix to the CRTL manual what
particular #ifdefs should go around this code to get it into the
sources.

The second problem was with Time::HiRes.  Although VMS 6.2 does not have many (if 
any) of the functions needed by this module, it's included in the default list of 
modules to build.  I reconfigured without this module but the test phase still tried 
to reference it.

That should be  a simple matter of adding lines similar to the
following in the BEGIN block of the test:

require Config; import Config;
if ($Config{'extensions'} !~ /\bTime\/HiRes\b/) {
print 1..0 # Skip: Time::HiRes was not built\n;
exit 0;
}


Lastly, several tests failed.  MMS TEST doesn't reveal much information about 
failures so I tried using harness. 

harness is the canonical unixy way to get more details.  The
idiomatic VMS way (documented in README.vms) is, for example:

$ @[.vms]test .exe  -v [.op]pack.t

I hope they haven't broken harness on VMS since the last time I tried it.

There were several things along the lines of 'unrecognized command verb \ECHO\' but 
also some real failures.  op/pack failed with what appears to be a floating point 
overflow.  Several Tie::File, Math::BigInt and Math::BigRat tests failed.  I can post 
the errors from the build logs if anyone is interested.

Does anyone know if any of these errors are serious?  Are they worth looking into or 
am I the last diehard still trying to use perl on VAX/VMS 6.2?

Tie::File is heavily dependent on POSIX-compliant seek()
functionality in the CRTL.  It's totally unsurprising that this
doesn't work in a version of VMS that is, what, 10 or 12 years old
and long since off the vendor's support matrix.  As far as I know, no
other core packages depend on Tie::File, so if you don't intend to use it
explicitly, you should be fine.

The various math-related problems most likely come from D_FLOAT not
representing the floating point ranges that tests expect.  Whether
this will cause you problems really depends on what sort of floating
point work you may be doing.  You can try configuring with G_FLOAT
(instructions in README.vms) and see if that makes a difference.  I
believe I was supposed to make G_FLOAT the default on VAX, but I
either got busy, forgot, decided I shouldn't without the ability to
test it, or all of the above.

-- 

Craig A. Berry
mailto:[EMAIL PROTECTED]

... getting out of a sonnet is much more
 difficult than getting in.
 Brad Leithauser


Re: Anyone still using OpenVMS/VAX 6.2?

2004-07-22 Thread Thomas Pfau
Craig A. Berry wrote:
At 7:10 PM -0400 7/22/04, Thomas Pfau wrote:
 

At work, our application still runs on VMS 6.2 on VAX systems.  I installed perl 5.8.0 
last year and don't remember having any problems.  Alas, I must have deleted the 
source tree after a successful build because I can't find them or any traces of the 
build other than the PERL_ROOT directory tree.
Anyway, I recently found SIMH (http://simh.trailing-edge.com/) and decided to give it a workout.  I figured I'd install 6.2 first since that's the version I'm familiar with and maybe later I could move to 7.3.  A new VMS install needs a new perl install so I figured I'd try to build 5.8.4.  I hit errors during the build on both SIMH and the real VAXen at work.
   

5.8.5 came out a couple of days ago but is unlikely to help with your
situation as no recent testing I'm aware of has been done on VAX or
on pre 7.x VMS.
 

That's what I was afraid of.  I'm really surprised it built and tested 
as clean as it did.

The first problem I hit during the build was an attempt to use ioctl(SIOCATMARK).  VMS 6.2 doesn't support ioctl().  I ended up writing a vms_siocatmark() function using a QIO to plug into [.ext.io]io.xs.
   

Good golly.  That sounds like a seriously useful bit of backporting
for folks in a similar situation.  It shouldn't be too hard to
determine from the appropriate appendix to the CRTL manual what
particular #ifdefs should go around this code to get it into the
sources.
 

As far as I can tell, none of the tests exercise this function.  All I 
know is it compiled clean.  I've never used out-of-band data on a TCP 
socket before so I don't know if I can come up with a good test for 
this.  It might be better to just make the routine unsupported on VMS 
pre-7.x unless someone needs it and can write a good test.

The second problem was with Time::HiRes.  Although VMS 6.2 does not have many (if any) of the functions needed by this module, it's included in the default list of modules to build.  I reconfigured without this module but the test phase still tried to reference it.
   

That should be  a simple matter of adding lines similar to the
following in the BEGIN block of the test:
   require Config; import Config;
   if ($Config{'extensions'} !~ /\bTime\/HiRes\b/) {
   print 1..0 # Skip: Time::HiRes was not built\n;
   exit 0;
   }
 

I'll plug that in and see if it works.
Lastly, several tests failed.  MMS TEST doesn't reveal much information about failures so I tried using harness. 
   

harness is the canonical unixy way to get more details.  The
idiomatic VMS way (documented in README.vms) is, for example:
$ @[.vms]test .exe  -v [.op]pack.t
I hope they haven't broken harness on VMS since the last time I tried it.
 

It seemed to be spitting out some errors where MMK TEST would just say 
'FAILED'.

There were several things along the lines of 'unrecognized command verb \ECHO\' but 
also some real failures.  op/pack failed with what appears to be a floating point 
overflow.  Several Tie::File, Math::BigInt and Math::BigRat tests failed.  I can post 
the errors from the build logs if anyone is interested.
Does anyone know if any of these errors are serious?  Are they worth looking into or am I the last diehard still trying to use perl on VAX/VMS 6.2?
   

Tie::File is heavily dependent on POSIX-compliant seek()
functionality in the CRTL.  It's totally unsurprising that this
doesn't work in a version of VMS that is, what, 10 or 12 years old
and long since off the vendor's support matrix.  As far as I know, no
other core packages depend on Tie::File, so if you don't intend to use it
explicitly, you should be fine.
 

I think VMS 6.2 is 11 years old (good guess!).  Last year we went 
looking into this and found it was 10 so it's at least nearing 11.

The various math-related problems most likely come from D_FLOAT not
representing the floating point ranges that tests expect.  Whether
this will cause you problems really depends on what sort of floating
point work you may be doing.  You can try configuring with G_FLOAT
(instructions in README.vms) and see if that makes a difference.  I
believe I was supposed to make G_FLOAT the default on VAX, but I
either got busy, forgot, decided I shouldn't without the ability to
test it, or all of the above.
 

I think some of the harness output seems to support this.  Maybe I'll 
leave a G_FLOAT build running over the weekend and see what happens.

I'll dig into the pack problem a little and see what I can come up 
with.  That one's pretty important to me.




Re: Anyone still using OpenVMS/VAX 6.2?

2004-07-22 Thread Craig A. Berry
At 10:43 PM -0400 7/22/04, Thomas Pfau wrote:

I'll dig into the pack problem a little and see what I can come up with.  That one's 
pretty important to me.

There's a high probability the pack problem is floating point related as well.

-- 

Craig A. Berry
mailto:[EMAIL PROTECTED]

... getting out of a sonnet is much more
 difficult than getting in.
 Brad Leithauser


Re: New member, and a patch for File::Spec::VMS

2004-07-22 Thread Craig A. Berry
At 1:27 AM +0200 7/23/04, Richard Levitte - VMS Whacker wrote:
In message [EMAIL PROTECTED] on Thu, 22 Jul 2004 17:51:41 -0500, Craig A. Berry 
[EMAIL PROTECTED] said:

craigberry Welcome back.

back?  Was I ever on this list before?  Or oh, do you mean to the
VMS world?  Been there the whole time, just been silent for a while
:-).

There are a number of posts from you from the archive in the 1998-2000
time frame.  If you were hoping to reappear incognito, sorry to blow
your cover.  None of the other Richard Levittes I know are VMS
Whackers, so it must be you ;-).

craigberry Did you rerun the entire test suite after your patch and
craigberry see any failures? 

Uhmm, *cough*, I didn't run the Perl tests, actually...  heh.  I'm an
oldie when it comes to VMS, but when it comes to hacking Perl
internals and the proper procedures thereoff, I'm a bit new...

I'll see what I can do, but I'd rather avoid a rebuild if possible...

If you still have your build directory, MMS TEST should not rebuild
anything but will rerun the entire test suite, no internals hacking
involved.

At 2:02 AM +0200 7/23/04, Richard Levitte - VMS Whacker wrote:

I'm going through the rest of File::Spec::VMS right now, finding more
things that aren't at all consistent with proper directory mangling on
VMS.  There will be more patches, one for each function I correct...

This is goodness.  If it's possible at the end of your development
cycle to do a final diff -pu on the whole thing, it will make
testing and integration easier.


At 2:49 AM +0200 7/23/04, Richard Levitte - VMS Whacker wrote:
In message [EMAIL PROTECTED] on Thu, 22 Jul 2004 20:38:49 -0400, John E. Malmberg 
[EMAIL PROTECTED] said:

wb8tyw While you are in the area, I submitted a patch to 5.8.4 release
wb8tyw candidate that gets Perl to almost honor the C feature
wb8tyw logicals.

I've yet to be able to build 5.8.4 on my VAX (VMS 7.2, DEC C 6.2-003,
anyone been able to build on that combination?), but I'll try it out
on the Alphas I have access to when I got a little more time.

Detailed bug reports and (especially) patches are always welcome.  I
don't have access to any VAXen, and whenever I think about getting an
emulator up and running I think of about 30 other things I should be
doing instead.  The result is that VAX builds don't (and probably
never will) get tested unless someone other than me does it.

wb8tyw To make the patch complete, the File::Spec::VMS needs to also
wb8tyw be modified to look at what the C feature logicals were before
wb8tyw Perl started, and and if they were the set to (IIRC)
wb8tyw DECC$FILENAME_UNIX_ONLY or DECC$FILENAME_REPORT_UNIX, do the
wb8tyw parse like it was UNIX, and display the filespec as if it were
wb8tyw UNIX.

Oh...  Hmm, feels a bit hairy, but can probably be done by calling
some appropriate function in the proper places... 

Or not calling them as the case may be.  I think this would mostly be
handled by not calling VMS::Filespec::vmsify so that filespecs remain
in unix format.  I have a feeling there is quite a bit more to this.
The assumption for the last 10 years of Perl on VMS is that filespecs
in unix format may cause problems, but filespecs in VMS format are
always safe, so when in doubt convert to VMS format.  I think that
when we start trying to preserve unix format we are going to break
some things inherent in those old assumptions. Nothing
insurmountable, just some work to do, which I hope someone finds time
and motivation for.

wb8tyw I do not know enough about Perl programming to make those
wb8tyw changes myself.

Hmm, if I'm gonna get involved at a deeper level, it will take some
monetary contribution.

My contributions to open source come in the form of patches, not
dollars, but I do wish you well.  In case anyone doesn't know,
Richard was porting GNU utilities to VMS for years before the GNV
project was even thought of.  I do wish hp would hire him to
accelerate what's going on at http://sourceforge.net/projects/gnv.

-
Please consider sponsoring my work on free software.
See http://www.free.lp.se/sponsoring.html for details.

-- 

Craig A. Berry
mailto:[EMAIL PROTECTED]

... getting out of a sonnet is much more
 difficult than getting in.
 Brad Leithauser