develooper Front page | perl.vmsperl | Postings from November 2002

Re: VOL:[foo.bar][baz.biff]file.tmp doesn't happen to work, does it?

Thread Previous | Thread Next
From:
PPrymmer
Date:
November 18, 2002 13:15
Subject:
Re: VOL:[foo.bar][baz.biff]file.tmp doesn't happen to work, does it?
Message ID:
OFD3B48F8A.500B53AF-ON85256C75.00739EBB@factset.com

Michael Schwern wrote:

!Just out of curiousity and desperate hope, this:
!
!VOLUME:[foo.bar][baz.biff]file.wif
!
!wouldn't happen to be equivalent to this:
!
!VOLUME:[foo.bar.baz.biff]file.wif
!
!?

If simple string concatenation were possible it would not
have been necessary for File::Spec to have goofy
subs like catfile() and catdir() that are distinct from
each other, now would it?  :-)

As it happens, no that simple concat does not work.
Here is a real world example using the logical name
associated with a mounted volume:

$ dir/nohead/notrail disk$perl:[perl-5_6_1_root.lib.time]gmtime.pm
DISK$PERL:[PERL-5_6_1_ROOT.LIB.TIME]GMTIME.PM;1

whereas the following two are errors:

$ dir/nohead/notrail disk$perl:[perl-5_6_1_root][lib.time]gmtime.pm
%DIRECT-E-OPENIN, error opening
DISK$PERL:[PERL-5_6_1_ROOT][LIB.TIME]GMTIME.PM as input
-RMS-F-SYN, file specification syntax error
$ dir/nohead/notrail disk$perl:[perl-5_6_1_root][.lib.time]gmtime.pm
%DIRECT-E-OPENIN, error opening DISK$PERL:[PERL-5_6_1_ROOT]
[.LIB.TIME]GMTIME.PM as input
-RMS-F-SYN, file specification syntax error

If I emulate a rooted logical name I can "ls" that file:

$ dir/nohead/notrail disk$perl:[perl-5_6_1_root.][lib.time]gmtime.pm
DISK$PERL:[PERL-5_6_1_ROOT.][LIB.TIME]GMTIME.PM;1

Had there been a translation concealed terminal logical name
that last one would not have worked either.  Here is
an illustration:

$ define/trans=(conc,term) perl_root DKA200:[perl-5_6_1_root.]

This works as expected:

$ dir/nohead/notrail perl_root:[lib.time]gmtime.pm
PERL_ROOT:[LIB.TIME]GMTIME.PM;1

These do not work:

$ dir/nohead/notrail perl_root:[lib][time]gmtime.pm
%DIRECT-E-OPENIN, error opening PERL_ROOT:[LIB][TIME]GMTIME.PM as input
-RMS-F-SYN, file specification syntax error
$ dir/nohead/notrail perl_root:[lib][.time]gmtime.pm
%DIRECT-E-OPENIN, error opening PERL_ROOT:[LIB][.TIME]GMTIME.PM as input
-RMS-F-SYN, file specification syntax error

In contrast to the use of the volume label example above
this does not work:

$ dir/nohead/notrail perl_root:[lib.][time]gmtime.pm
%DIRECT-E-OPENIN, error opening PERL_ROOT:[LIB.][TIME]GMTIME.PM as input
-RMS-F-DEV, error in device name or inappropriate device type for operation

And for completeness this does not work either:

$ dir/nohead/notrail perl_root:[lib.][.time]gmtime.pm
%DIRECT-E-OPENIN, error opening PERL_ROOT:[LIB.][.TIME]GMTIME.PM as input
-RMS-F-DEV, error in device name or inappropriate device type for operation

HTH

Peter Prymmer



Thread Previous | Thread Next


nntp.perl.org: Perl Programming lists via nntp and http.
Comments to Ask Bjørn Hansen at ask@perl.org | Group listing | About