From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from localhost by hawkwind.utcs.toronto.edu with SMTP id <2755>; Mon, 24 May 1993 21:47:08 -0400 Return-Path: oldp.astro.wisc.edu!alan Received: from oldp.astro.wisc.edu ([128.104.39.15]) by hawkwind.utcs.toronto.edu with SMTP id <2755>; Mon, 24 May 1993 21:44:07 -0400 Received: by oldp.astro.wisc.edu (5.65/DEC-Ultrix/4.3) id AA20975; Mon, 24 May 1993 20:43:44 -0500 Message-Id: <9305250143.AA20975@oldp.astro.wisc.edu> To: rc-owner Subject: Re: wishlist Date: Mon, 24 May 1993 21:43:43 -0400 From: Alan Watson X-Mts: smtp Resent-To: rc Resent-Date: Mon, 24 May 1993 21:46:55 -0400 Resent-From: Chris Siebenmann Resent-Message-Id: <93May24.214708edt.2755@hawkwind.utcs.toronto.edu> So what should go? (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 }" (b) The flattening operator: use a function instead fn flatten { if ( ~ $#* 0 ) { echo >[2=1] 'usage: flatten list ...' return 1 } list = $1 { shift $list = $1 while ( ! ~ $#* 0 1 ) { shift $list = $list^' '^$1 } } } (c) `` backquote substitution: use ifs = ( foo ) { bar = `{ baz } } (d) newpgrp: use a wrapper around rc. (e) cdpath: do it with a function.