Plumb (version 3)

Plumb is a declarative shell with focus on pipes: instead of pipelines, it can build large graphs of processes (nodes) and pipes (edges). Pipes are simple unidirectional streams without side effect; traffic can be controlled by virtual processes (which are nodes just like real processes, but are implemented in plumb for minimal overhead). Virtual processes can split, merge, regex filter/alter, shape the streams. Timers and starting/stopping processes or even rewiring the script on the fly are also supported. Plumb is portable (using libporty) and behaves exactly the same way on Linux, Windows, MacOSX, many BSD variants and older UNIX systems.




[Jan 03 2022] Bugfix release 3.1.0 is available. Features [socket] for networking, 69 and plumb's return value can be modified.
[Jun 18 2013] Bugfix release 3.0.3 is available. Also features [tank], a generic datagram buffer.
[Apr 14 2013] Bugfix release 3.0.2 is available.