rc-list - mailing list for the rc(1) shell
 help / color / mirror / Atom feed
* yaoofc (yet another opinion on feaping creatureism)
@ 1991-07-02 19:41 Arnold Robbins
  0 siblings, 0 replies; only message in thread
From: Arnold Robbins @ 1991-07-02 19:41 UTC (permalink / raw)
  To: rc

Time for someone else to throw in their 2 cents.  It's been a while since
I've been involved in shell wars, so I may be a bit rusty.  Where *did* I
put that light saber... :-)

(I want to make a parenthetical comment.  Saying that "no-one would ever
use feature X so don't add it" is sort of silly.  If it's never added, of
course it'll never be used!)

I think a lot of the wishlist stuff can be viewed as a dichotomy between
the dual role of the shell as both an interactive user interface, and
as a programming language.  Everyone (hopefully) agrees that the script
language should be a subset of the interactive facilities; the question
then becomes: should the number of features added primarily for interactive
use be greater than zero?

I suspect that most peoples' slant on this question is heavily determined
by their current environment.  Those of us (like me) with glass ttys are much
more inclined to want the whizzy stuff in the shell than those of us with
windowing systems to do the whizzy stuff for them.  (Although we're likely
to admit that in a perfect world we should all have windowing systems, many
of us are doomed to hopelessly pine away for them.)

Let's look at the feature list from this point of view.  Note that all of
this is IMHO.   A yes or no in the 'script' or 'interactive' column means
that it would be used in both, not necessarily that it should be in the
language.

Feature		Script		Interactive	My opinion
-------		------		-----------	----------
  ^^		yes		yes		useful across the board,
						something that if it were
				there I would probably use, not easily
				do-able outside the shell

array range	yes		yes		not necessary, use an awk
						or C program

\ escapes	yes		yes (not often)	leave out.  *perhaps* enhance
						echo ala v(8 9 10) to take
						-e and do escapes there.

~user		yes (not often)	yes		common practice in the unix
						world, pretty useful, better
				than symlinks or a program.  Here I like the
				argument of the shell doing all "symbolic"
				expansion

readline	no		yes		see below

history		no		yes		see below

job control	no		yes		see below

``		yes		yes		no opinion. i'm not enough
						of an rc expert yet

builtin ls	yes		yes		useful.  leave it in.  fyi,
						this is how the posix 1003.2
						'command' utility will work.


OK, now the main bones of contention, history, job control, and interactive
filename expansion/completion.  I think that everyone agrees that history
is useful.  We also agree that interactive history editing need not be
in the shell, e.g. the =(1) command on v(8 9 10) Unix.  If rc came with
an = command (that implemented vi editing, natch :-) I'd be perfectly
happy with that.

Job control is tougher.  I fully recognize why Byron is loath to add it
to rc, and I'm not pushing for it.  (BTW, would whoever said that the UCB
folks wanted job control for rc please say where they heard it?  I talked
to Keith Bostic in April about rc, he didn't have any plans to have anyone
put job control in it...)  Dealing with SIGCLD on S5 systems is also
messy.  If someone goes to the trouble of doing job control for rc, go
ahead and incorporate it (perhaps ifdefed), but Byron shouldn't go to
the trouble of doing it from scratch.

Filename expansion.  I use this all the time. I've been an admitted ksh
junkie for some time, and therefore I think that leaving readline in is
the only way rc will be accepted.  Readline itself is rather a hack, ksh's
vi mode is MUCH cleaner, but that's orthogonal to keeping it as part of rc.
OR, move filename expansion into the = program as well, often I use the
two in combination.

GRRR.  These are tough issues.  [ Mild Flame Warning ] Alas, the ATT
Research folks are often a bit ivory tower in their attitudes (WE
all have gnots, WE all run Plan 9.  WE don't see any reason to do
things any other way.)

Arnold Robbins				 AudioFAX, Inc. | Threads are the
2000 Powers Ferry Road, Suite 200 / Marietta, GA. 30067 | lack of an idea.
INTERNET: arnold@audiofax.com  Phone:   +1 404 618 4281 |     -- Rob Pike
UUCP:	  emory!audfax!arnold  Fax-box: +1 404 618 4581 |


^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~1991-07-02 19:42 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
1991-07-02 19:41 yaoofc (yet another opinion on feaping creatureism) Arnold Robbins

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).