std.string and std.algorithm: what to do?
georg.wrede at iki.fi
Sat May 16 20:15:19 PDT 2009
Simen Kjaeraas wrote:
> Daniel Keep wrote:
>> WinXP doesn't support symbolic links.
> This is not true. NTFS 5.0+ (Windows 2000+) has support for symbolic
> links, they're just not readily available to the average user. They
> are known as 'junction points' or 'reparse points'.
> There are certain gotchas, and Explorer has no idea how to handle
> them intelligently, but they exist and they work.
> More here: http://www.shell-shocked.org/article.php?id=284
"and they work" may be somewhat optimistic.
I read 30% of the article. You can expect the symliks to work, but as
with most Windows stuff that's even two inches off the beaten path, it
will work until the day you really need it.
The more they seem to work, the more you'd of course use them. But come
the day you need to restore your backup, to copy a file hierarchy, or
somethig else, and *poof*, you'll have garbage all over the place. And
no warning about it.
Microsoft has this uncanny ability to fix everything with "slap-on
code". Now, their real forte is to get it to work in the first place,
whereas any normal coder would hopelessly tangle themselves within the
first five minutes.
But it only works in demos and as long as you follow some existing
guidelines without *ever* doing something new, based on a (or actually,
*the*) obvious theory of how it works.
As an opposite, the entire *point* of the Unix user experience, is that
once you have an understanding of the workings of the system, you can
create new idioms, new patterns of work, and new ways to use the entire
system -- without ever fearing that this would cause mysterious behavior.
Just an example: MS-DOS had pipes already when regular PCs didn't have
hard disks. One could watch grand demos in trade shows, where the guy
piped stuff to sort, to find (their sorry version of grep), to more, and
to custom made filters.
What nobody told the user (until he had already bought a PC with MSDOS,
and he had tried to actually use the feature, unsuccessfully, and then
called the $10-a-minute hotline), is that the pipes were implemented so
that the first program writes the entire output into a temporary file on
the floppy, and once it has finished running, the next program then
opens the file as input.
Now, with the 0.00036 GB floppies of the day, it's not hard to see why
nobody ever got any real pipe work done.
Pipes were an integral part of Unix way before that time. And still, the
Microsoft sales "persons" made all idiots believe Microsoft freaking
*invented* the concept. (I've actually witnessed this in trade shows.)
More information about the Digitalmars-d