Re: A strange behaviour of a File property
On 11/15/2011 9:17 AM, Andreas Leitgeb wrote:
Eric Sosman<esosman@ieee-dot-org.invalid> wrote:
On 11/14/2011 12:38 PM, Andreas Leitgeb wrote:
[... concerning VMS ...]
How recent was your porting activity? (months, years or decades?)
[ Answer: essentially last century ]
Do you think, the same management would make
that decisions again nowadays for nowadays'
marketshare of VMS?
Would they decide to sell product on one of the most popular
platforms in their ecosystem? I hope so!
Would they decide to drop a platform because it would mostly
disappear within, oh, sixty-plus financial quarters? I hope not!
Anyway, I agree that using the abstraction that File provides
is principially better than doing one's own path-arithmetics.
I also agree, that providing the pathSeparator impedes the
abstraction.
Sometimes, abstraction also gets into your way: how would you
model a relative path that starts with going one or more levels
up?
File child = ...;
File parent = child.getParent();
File grandparent = parent.getParent();
...
I think to remember that MacOS (before 10) didn't have
such a concept. Did(/does) VMS?
Can't answer for MacOS. In VMS, sure: A file or directory was
either at the topmost level of its file system or it was contained
in a parent directory, and you could find the parent, and so on.
<Falling into a prophetic trance>: The year 2014 will see the
introduction of a brand-new paradigm for thinking about persistent
storage, one in which names cannot be so trivially encoded. By 2017,
systems based on this new scheme will have swept away all the naive
file-naming notions of Unix, MS-DOS, VMS, AIX, and VM; even URI's
will be on their way out. Will Java be part of the problem, or part
of the solution?
A very good argument. I doubt, however, that even those using the
current File API in the cleanest possible way, will necessarily be
fit for those future filesystem changes.
True: Java has lots of other built-in limitations that make it
unsuitable or at least uncomfortable for "advanced" (or even "large")
files. I guess the Java answer is "We'll pretend the super-files are
databases and make you go through adapters to get at them ..."
</smiley></rant> Oh, did I forget to open these?
--
Eric Sosman
esosman@ieee-dot-org.invalid