Pipes allow the output of one primitive to flow into a subsequent primitive.
Pipes can easily be created inside a macro.
The Midas framework handles the details of synchronization between the writer and
readers of a pipe.
Pipes can be either blocking (prevents data loss) or non-blocking (allows
data loss in cases where speed is more important than completeness).
Java Experts Take Note:
The data pipe concept is very similar to pipes in Unix. However, some of the Midas frameworks
(including NeXtMidas) provide additional features not found in the Unix pipes.