why learn UNIX
PAAAAAR at calstate.bitnet
PAAAAAR at calstate.bitnet
Fri Feb 6 08:21:52 AEST 1987
In-Reply-To: "John Woods, Software"'s message of 28 Jan 87 03:49:00 GMT
> WHAT IN HOLY GOOD GOD EARTH DO PIPES HAVE TO DO WITH RAPID PROTOTYPING??
>
> This article sounds like a snow job... growl.
>
> garry wiegand (garry%cadif-oak at cu-arpa.cs.cornell.edu)
In addition to the obvious use of pipes for spell checking and such things
it is *not* well known that pipes are an ideal way to prototype any
problem which has what Michael Jackson (*not* the dancer!) calls a
"structure clash". In JSP (Jackson Structured Programming) a problem
with a clash is decomposed into separate programs and data objects
linked by data streams. The streams are defined to work *exactly* like
pipes.
Usually a pipelined solution is a little slow and so JSP typically
recodes one or more programs as semi-co-routines by a process called
"inversion". These look UGLY but work efficiently.
See Bo. Sanden's recent book and articles. Also (inshallah) the book
that I will get out with Paul Ross next year (Systems Programming: A
Softwrae Engineering Approach) which has several chapters on prototypes
and process communication.
Also - if anyone needs to invert any C programs or create co-functions
in C I have a short m4 macro package that makes the task a
little less dirty.
Dick Botting, Dept Comp Sci., Cal State U, San Bernardino, CA 92407
PAAAAAR at CCS.CSUSCC.CALSTATE.EDU voice:714-887-7368
modem:714-887-7365 (Silicon Mountain -- where the LA smog stops)
More information about the Comp.unix.questions
mailing list