From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from techfac.TechFak.Uni-Bielefeld.DE ([129.70.132.100]) by hawkwind.utcs.toronto.edu with SMTP id <2230>; Tue, 25 May 1993 02:55:21 -0400 Received: from idefix.TechFak.Uni-Bielefeld.DE by techfac.TechFak.Uni-Bielefeld.DE id AA22229; Tue, 25 May 1993 08:55:13 +0200 Received: by idefix.techfak.uni-bielefeld.de (5.0/tp.29.0890) id AA28604; Tue, 25 May 93 08:55:12 +0200 Date: Tue, 25 May 1993 02:55:12 -0400 From: malte@TechFak.Uni-Bielefeld.DE Message-Id: <9305250655.AA28604@idefix.techfak.uni-bielefeld.de> To: rc@hawkwind.utcs.toronto.edu Subject: Re: wishlist In-Reply-To: Mail from 'Alan Watson ' dated: Mon, 24 May 1993 21:43:43 -0400 In response to Alan Watson : (a) Here strings: use "echo 'foo' | bar" instead of "bar <<< 'foo'" For more complex cases, like "bar <<<[0]'foo0' <<<[1]'foo1'" use "echo 'foo0' |[1=0] { echo 'foo1' |[1=1] bar }" Well, I made this mistake too: echo 'foo' != 'foo' but echo -n 'foo' == 'foo' I think it's too much typing ( see answer to backqoutes ). But I wouldn't bother if here string were removed because I don't use them anyway. (b) The flattening operator: use a function instead rc lists are always flat, so reading your function definition, I assume you mean joining a lists elements into a single element. If this is the case use fn flatten {$1=``(){echo -n $$1}} because your flattening function uses the flattening operator it tries to replace. (c) `` backquote substitution: use Yes, this will surely simplify the parser, but in my experience simplicity is not the ultimate goal. In a real worlds shell you have to watch for conveniencies, too. Whenever I try to persuade people to use rc, after a while they'll complain about too much typing because of oversimplified quoting rules. That's why I asked for backslash escapes. I like the "``" mechanism very much. And besides, what should be The Right Thing to do ; ifs = () { echo $#ifs $ifs } 0 or 1 I mean, should ifs be unset or set to an empty list ? What does it mean if ifs not set ? If set to an empty list, this would be different from every other variable. (d) newpgrp: use a wrapper around rc You'll loose the history list when using readline or editline. And another thing that hasn't been discussed here: What about compatibility with plan 9 rc ? Malte