9fans - fans of the OS Plan 9 from Bell Labs
 help / color / mirror / Atom feed
From: Balwinder S Dheeman <bsd.SANSPAM@anu.homelinux.net>
To: 9fans@9fans.net
Subject: Re: [9fans] Making read(1) an rc(1) builtin?
Date: Tue,  5 Apr 2011 08:57:54 +0000	[thread overview]
Message-ID: <kthq68xj6g.ln2@news.homelinux.net> (raw)
In-Reply-To: <6F0F8044-F5CB-4C07-817A-A9D579DA5A14@9srv.net>

On 04/05/2011 03:19 AM, Anthony Sorace wrote:
> On Apr 4, 2011, at 17:35, smiley@zenzebra.mv.com wrote:
>
>> All combined (forking read/test/echo, forking awk/sed/dd, parsing
>> /mnt/acme/%d/events, etc.)... this, I think, is why languages like Perl
>> came into existence and became so popular.  I could definitely write an
>> Acme event parser in Perl, or even in bash(1).  rc(1) is just a few
>> small features shy of making it practical to do in rc(1).
>
> I think this does a very good job of summing up the issue. I think the point
> you might be missing, though, is that most of the Plan 9 community is quite
> happy about the current state of things. You're likely right that considerations
> like this led to perl and bash - but rc's state is not an accident. We know
> where to get perl and bash if we want them.

[bsd@werc ~] man bash |tail -24
BUGS
    *It's too big and too slow*.

    There are some subtle differences between bash and traditional
    versions of sh, mostly because of the POSIX specification.

    Aliases are confusing in some uses.

    Shell builtin commands and functions are not stoppable/restartable.

    Compound commands and command sequences of the form `a ; b ; c' are
    not handled gracefully when process suspension is attempted. When a
    process is stopped, the shell immediately executes the next command
    in the sequence. It suffices to place the sequence of commands
    between parentheses to force it into a subshell, which may be
    stopped as a unit.

    Array variables may not (yet) be exported.

    There may be only one active coprocess at a time.

GNU Bash-4.2               2010 December 28                  BASH(1)

BTW, that highlighting, above, is mine ;)

> Put another way, your problem seems to be "I can't write an acme client in
> rc with performance I'm happy with" (leaving aside, for the moment,
> questions of measurement). Your solution is "expand rc"; I suspect the
> consensus of the community would be either "deal with it" or "use C".
>
> Actually, that might be the consensus of the community on *most* issues. :-)

--
Balwinder S "bdheeman" Dheeman        Registered Linux User: #229709
Anu'z Linux@HOME (Unix Shoppe)        Machines: #168573, 170593, 259192
Chandigarh, UT, 160062, India         Plan9, T2, Arch/Debian/FreeBSD/XP
Home: http://werc.homelinux.net/      Visit: http://counter.li.org/



  parent reply	other threads:[~2011-04-05  8:57 UTC|newest]

Thread overview: 47+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-04-03 22:30 smiley at zenzebra.mv.com
2011-04-03 23:22 ` pmarin
2011-04-03 23:41 ` Tristan Plumb
2011-04-04  2:02   ` Ethan Grammatikidis
2011-04-04  2:53   ` erik quanstrom
2011-04-04  7:54     ` Tristan Plumb
2011-04-04  9:26     ` roger peppe
2011-04-04 21:35       ` smiley
2011-04-04 21:46         ` Anthony Sorace
2011-04-04 22:03           ` erik quanstrom
2011-04-05  8:57           ` Balwinder S Dheeman [this message]
2011-04-04 22:00         ` Oleg Finkelshteyn
2011-04-04 22:33         ` erik quanstrom
2011-04-04 23:01         ` Lyndon Nerenberg
2011-04-05  8:58         ` yy
2011-04-05 19:54           ` Ethan Grammatikidis
2011-04-05 19:56             ` erik quanstrom
2011-04-05 20:54               ` Ethan Grammatikidis
2011-04-05 21:53                 ` andrey mirtchovski
2011-04-06 16:32                   ` Bakul Shah
2011-04-06 16:43                     ` roger peppe
2011-04-06 18:15                       ` erik quanstrom
2011-04-06 18:37                         ` Yaroslav
2011-04-07  8:45                           ` Greg Comeau
2011-04-06 18:18                     ` erik quanstrom
2011-04-07  8:45                     ` Greg Comeau
2011-04-05  9:10         ` roger peppe
2011-04-05 15:47           ` ron minnich
2011-04-05 15:52             ` Jacob Todd
2011-04-05 15:57               ` erik quanstrom
2011-04-05 16:04               ` Rudolf Sykora
2011-04-05 17:17                 ` ron minnich
2011-04-05 17:49             ` smiley
2011-04-05 18:01               ` erik quanstrom
2011-04-05 19:50               ` Yaroslav
2011-04-06 15:27                 ` smiley
2011-04-06 15:32                   ` Jacob Todd
2011-04-07  1:26                     ` [9fans] Busy mouse WAS: " smiley
2011-04-07 11:49                       ` erik quanstrom
2011-04-07 19:59                         ` smiley
2011-04-07 20:19                           ` erik quanstrom
2011-04-09 12:26                             ` smiley
2011-04-09 12:33                               ` erik quanstrom
2011-04-05 16:28         ` [9fans] " dexen deVries
2011-04-05 17:05         ` Bakul Shah
2011-04-03 23:51 ` Lyndon Nerenberg (VE6BBM/VE7TFX)
2011-04-04  3:01 ` erik quanstrom

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=kthq68xj6g.ln2@news.homelinux.net \
    --to=bsd.sanspam@anu.homelinux.net \
    --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).