> hget is similar to almost all plan 9 programs
> and (not surprisingly) different from many
> modern unix programs in that, by default,
> it writes to standard output.

This may seem idiosyncratic, but it has a big benefit.

On various machines I have wget, curl, fetch, etc., and
each one has a different policy for where it puts its
output--some of them "helpfully" choose a semi-predictable
filename instead of overwriting an existing file, which is
almost always anti-helpful, because I'm generally *trying*
to overwrite the (obsolete) existing file with the new bits.
Each one helpfully provides a "no, really, name the file
this: ____" flag which will allow me to manually tell it to
put the bits where it supposedly automatically puts them,
BUT EACH ONE USES A DIFFERENT LETTER FOR THIS FUNCTION.  Is
it wget where it's -o and curl where it's -O, or the other
way around?  Whee!

In sharp contrast, the "option letter" for sending stdout to
somewhere is always the same: '>'.  By having this one feature
in the shell and *not* having it in every other program, life
is improved despite there being fewer lines of code.  How odd.

Dave Eckhardt

Reply via email to