John E. Malmberg wrote:
Michael G Schwern wrote:
On Fri, Sep 30, 2005 at 12:25:04PM -0400, John E. Malmberg wrote:
The current interface is good enough for the default filesystem, I
guess, but you should be able to ask about a specific file system,
e.g.:
my $x = File::System::Spec->new(File::Spec->catfile(.. the path
...));
$x->case_tolerant; # asks about the filesystem hosting the path
I envisioned that this module would be for setting or reading
properties, so a 'new' method does not seem to fit in with that.
A new definately fits in because there is more than one file system on a
system, thus more than one object. Starting out from scratch with the
assumption that there is only one filesytem to worry about deliberately
cripples the interface.
And if nothing else it means you don't have to write File::System::Spec
over and over and over and over again.
I misunderstood the meaning of the new method. I see now that it
returns a new storage variable with the properties underneath it.
Another VMSish issue has occurred to me.
I can look up the file system properties for an existing file with
absolute accuracy.
I may not be able to look up the file system properties for a
non-existent file or a directory with the same accuracy.
OpenVMS has a feature known as search lists. These are logical names
with more than one target, and when an existing file is to be opened,
each possible target is checked until the file is found.
This is all handled by the operating system with out programs having to
know about them.
There is no restrictions that require the targets to have the same file
system, and it would require significant code to to detect the presence
of a search list and verify that all devices on it are using the same
file system with the same settings.
And if it is discovered that the file systems are not the same, what
answer should be given?
New files opened for write are created in the first directory of a
search list. New files opened for append are created in the last
directory of a search list.
It seems to me that it would have to be a documentation issue that on
VMS for the accuracy of the results.
-John
[EMAIL PROTECTED]
Personal Opinion Only