|
![](/i/fill.gif) |
Warp wrote:
> (Yes, I am exaggerating above. It's on purpose. However, I am trying
> to make a point.)
Agreed. If someone said "Windows doesn't support making symlinks from the
command line", I might agree (if it were true, which it isn't).
But understand that the designs behind Windows and Unix are different.
Windows does things thru APIs. Unix does things thru data formats.
For example, before BSD, directories were plain old files. "ls" would open
and parse the data in the directory. "mkdir" would actually create the
directory file then write the records for "." and ".." to it - the system
call actually invoked fork() and exec() to run /bin/mkdir.
Windows doesn't do things that way. It uses APIs and COM objects as its
normal functional mechanism. People use languages where it's hard to invoke
COM objects and then complain they can't get to that functionality (or, more
specifically, that the functionality doesn't exist). It's kind of annoying,
because it's the kind of thing that makes for bad software under Windows.
It's a kind of interesting trade-off, engineering-wise. The same sort of
trade-off between using a database vs the file system, or using binary vs
text formats for data, or etc.
Also, there are ways to do things in Windows (like use the registry) and
ways to do things in Unix (like put dot files in the home directory). When
people complain that Windows does a poor job of defining the home directory,
I don't think it's unreasonable to say "you're not supposed to use the home
directory, so it's not trivial to get at that information."
You're not supposed to use symlinks in Windows. That's why there's no
trivial manual way of doing things. There are better mechanisms for
achieving that end. Hence, complaining it's not as easy to use symlinks
under Windows is like complaining there's no easy way to do COM-like
operations under Unix. That just isn't how you do things in Unix.
--
Darren New, San Diego CA, USA (PST)
My fortune cookie said, "You will soon be
unable to read this, even at arm's length."
Post a reply to this message
|
![](/i/fill.gif) |