🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: comp.sys.amiga.tech
Article #3795

Re: Pipes

#3795
From: Kent Paul Dolan
Date: Wed, 06 Jun 1990 10:46
59 lines
3408 bytes
In article <136735@sun.Eng.Sun.COM> cmcmanis@stpeter.Eng.Sun.COM (Chuck McManis) writes:
>In article <2533@zipeecs.umich.edu> (Ralph Seguin) writes:
>>Anybody got any idea when C= is going to get around to writing true pipes
>>(ala UNIX)?  I suppose that I'm probably going to get flamed all over
>>the place for this one 8-)
>
>You wouldn't happen to be confusing pipes with the bit of syntactic
>sugar (the vertical bar) that the UNIX shells offer would you? If
>you can define "true pipe" it would help to answer the question,
>if you want the syntax I would suggest WShell, a commercial shell from
>Bill Hawes which offers this. I don't believe this is available in the
>2.0 Amiga Shell (yet?, it's only beta). Anyway, looking forward to
>the definition you give...
>

Bzzzzt!   Wrong answer Chuck.

From a user's viewpoint (You do remember users?  They pay the bills.), the
difference is far more than syntactic sugar.  The difference is information
overload and confusion.

Under Unix, the user strings together a set of filters by a convenient and
reasonably transparent mechanism, the one line set of piped commands.

This hides from him/her the nastiness needed on the Amiga:

1) S/he has to remember to explicitly spawn a separate light weight process
for all but the last command, via the "run" command, _or_ stop whatever is
going on long enough to open separate cli windows in which to execute each
separate command of the piped commands.  Fail to do one or the other, and
s/he is busy exploring the bugs in the responses of C:'s inhabitants to the
BREAK command.

2) S/he has to create a distinct and explicit pipe: directory entry for each
and every intermediate file.  Mistype pipe:b as pipe:a and things are frozen
up again; back to exploring BREAK.

The Unix user is protected from all this by the _information_hiding_mechanism_,
not "syntactic sugar", of the "|" implementation of pipes.

In addition, "|" affords the Unix user the chance to push the whole set of
commands in the background with two keystrokes, " &" at the end of the line,
to recall the entire set of commands and repeat it as a single entity with
"!!", and, if in one of the nicer shells that allows command line editing,
to recall and edit as a single entity the entire set of commands comprising
the piped set.

Looking at the Amiga implementation, like looking at the choice of "#?" for
the wildcard (that I for one use on over half my typed lines), rather than
the single keystroke "*", brings to mind the same question:  "Why did the
Amiga developers go to the time, trouble, and expense  to design and
implement something poorly, when an example of how to do it much better was
conveniently at hand?"

If "not invented here" is that strong a paradigm of software development,
perhaps it is high time for a paradigm shift.

Kent, the man from xanth.
<xanthian@Zorch.SF-Bay.ORG> <xanthian@well.sf.ca.us>
Technical Details
Message-ID: <1990Jun6.104643.15176@zorch.SF-Bay.ORG>
Path: arc1-ca.pugleaf.net!utzoo!utgpu!news-server.csri.toronto.edu!mailrus!umich!samsung!usc!zaphod.mps.ohio-state.edu!uakari.primate.wisc.edu!ames!vsi1!zorch!xanthian
References: <2533@zipeecs.umich.edu> <136735@sun.Eng.Sun.COM>

Show Full Headers
Complete Article Headers
Path: arc1-ca.pugleaf.net!utzoo!utgpu!news-server.csri.toronto.edu!mailrus!umich!samsung!usc!zaphod.mps.ohio-state.edu!uakari.primate.wisc.edu!ames!vsi1!zorch!xanthian
From: xanthian@zorch.SF-Bay.ORG (Kent Paul Dolan)
Newsgroups: comp.sys.amiga.tech
Subject: Re: Pipes
Message-ID: <1990Jun6.104643.15176@zorch.SF-Bay.ORG>
Date: 6 Jun 90 10:46:43 GMT
References: <2533@zipeecs.umich.edu> <136735@sun.Eng.Sun.COM>
Organization: SF Bay Public-Access Unix
Lines: 59