9fans - fans of the OS Plan 9 from Bell Labs
 help / color / mirror / Atom feed
From: John Stalker <stalker@maths.tcd.ie>
To: Fans of the OS Plan 9 from Bell Labs <9fans@9fans.net>
Subject: Re: [9fans] mishandling empty lists - let's fix it
Date: Wed,  7 Oct 2009 09:30:51 +0100	[thread overview]
Message-ID: <200910070930.aa64725@salmon.maths.tcd.ie> (raw)
In-Reply-To: <13426df10910061127m7331b58dqba8abf01a0fc11f8@mail.gmail.com>

> one last note on this because it is kind of interesting.
...
> I think that in limited situations, inconsistency is a good thing.
> And, conversely, one can take consistency as an absolute good, and run
> off the road.
...
> ron

I agree with most of this, and with most of what I've edited out.
But I think that in this case we can distinguish two types of
utilities: those that behave inconsistently for a well thought out
and useful reason, and those which are inconsistent merely because
someone wasn't thinking properly.

Cat, for example, is inconsistent for sensible reasons.  In a world
where it has options, and p9 cat still doesn't, the convention of
assuming stdin in the absence of arguments is mildly useful.  It's
also easy to add /dev/null to the list if you want to avoid that
behaviour.  Globbing can be a problem here, which is what the OP was
complaining about, but that is, if anything, a problem with the shell.

Rm is, I think, an example of someone who simply wasn't thinking
properly.  In

	rm `{ complicated pipeline }

I almost certainly want the exit status to reflect whether all the
selected files were deleted, even if there weren't any, so I want
rm without arguments to succeed silently.  There is no real advantage
to the present behaviour.  Yes, it warns you that you might not have
removed what you wanted to, but that's not the way UNIX and it's
descendants are supposed to behave.  After all, if I type

	rm -rf $jnukdir/*

then I don't expect a warning that $jnukdir is not defined while
$junkdir is, and that perhaps what I really meant was

	rm -rf $junkdir

Everything can be carried to extreme.  Even ancestor worship.  The
basic utilities were written by smart people who didn't always fully
understand what they were doing.  There is nothing radical about
suggesting that we try not to repeat their mistakes.
--
John Stalker
School of Mathematics
Trinity College Dublin
tel +353 1 896 1983
fax +353 1 896 2282



  reply	other threads:[~2009-10-07  8:30 UTC|newest]

Thread overview: 55+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <<20091005055423.GA14691@nipl.net>
2009-10-05 13:30 ` erik quanstrom
2009-10-05 16:13   ` Russ Cox
2009-10-05 19:24     ` Sam Watkins
2009-10-05 19:31       ` erik quanstrom
2009-10-05 21:04       ` John Stalker
2009-10-05 22:13         ` Jason Catena
2009-10-06 10:10           ` lucio
2009-10-06  2:22         ` ron minnich
2009-10-06  4:37           ` erik quanstrom
2009-10-06  4:50             ` ron minnich
2009-10-06  6:40           ` John Stalker
2009-10-06 17:45             ` Brian L. Stuart
2009-10-06 18:00               ` John Stalker
2009-10-06 18:27                 ` ron minnich
2009-10-07  8:30                   ` John Stalker [this message]
2009-10-07 11:05                     ` roger peppe
2009-10-06  8:40           ` matt
2009-10-06 16:50             ` John Stalker
2009-10-06 17:15               ` Jason Catena
2009-10-06 17:50             ` Tim Newsham
2009-10-06 19:27               ` John Stalker
2009-10-06 20:10                 ` Jason Catena
2009-10-05 21:35       ` Russ Cox
     [not found] <<200910071414.aa02318@salmon.maths.tcd.ie>
2009-10-07 13:36 ` erik quanstrom
2009-10-07 14:02   ` W B Hacker
     [not found] <<200910070930.aa64725@salmon.maths.tcd.ie>
2009-10-07 12:14 ` erik quanstrom
2009-10-07 13:14   ` John Stalker
     [not found] <<200910060740.aa94573@salmon.maths.tcd.ie>
2009-10-06 12:59 ` erik quanstrom
     [not found] <<646955677faa922172207300b93ff6ea@hamnavoe.com>
2009-10-04 18:39 ` erik quanstrom
2009-10-03 16:03 Sam Watkins
2009-10-03 17:01 ` Rob Pike
2009-10-03 18:31   ` Sam Watkins
2009-10-03 18:56     ` Rob Pike
2009-10-03 19:05       ` blstuart
2009-10-03 19:18         ` hiro
2009-10-03 20:31     ` Steve Simon
2009-10-05 16:08     ` John Stalker
2009-10-05 16:24       ` erik quanstrom
2009-10-05 17:20         ` John Stalker
2009-10-05 19:09           ` roger peppe
2009-10-03 18:46 ` Bakul Shah
2009-10-03 19:11   ` Sam Watkins
2009-10-04  4:12     ` lucio
2009-10-04  7:17       ` Sam Watkins
2009-10-04  9:18         ` lucio
2009-10-05  6:20           ` Sam Watkins
2009-10-05  6:53             ` Federico G. Benavento
2009-10-04 10:46         ` Richard Miller
2009-10-06  6:59           ` Uriel
2009-10-06 12:01             ` Jacob Todd
2009-10-04 10:59         ` sqweek
2009-10-05  5:54           ` Sam Watkins
2009-10-05 11:23           ` matt
2009-10-04 10:18 ` Charles Forsyth
2009-10-04 10:26   ` lucio

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=200910070930.aa64725@salmon.maths.tcd.ie \
    --to=stalker@maths.tcd.ie \
    --cc=9fans@9fans.net \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).