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