Examples are given of networks with 20-30 processes (threads). Because of the component layering, we never need to consider more than about 5 at a time and it is easy to see what they do and that they are without deadlock, livelock, starvation or race-hazard problems.
Class | Description |
---|---|
AndInt | Bitwise ands two integer streams to one stream. |
BlackHoleInt | Black holes anything sent to it. |
Delta2Int | This process broadcasts integers arriving on its input channel in parallel to its two output channels. |
DeltaInt | This process broadcasts integers arriving on its input channel in parallel to its array of output channels. |
DemultiplexInt | This demultiplexes data from its input channel to its output channel array. |
DeparaplexInt | This demultiplexes data from its input channel to its output channel array. |
DynamicDeltaInt | This process broadcasts integers arriving on its input channel in parallel to its output channel array -- those output channels can be changed dynamically. |
FibonacciInt | This generates the Fibonacci sequence on its output channel. |
FixedDelayInt | This holds on to data from its input channel for a fixed delay before passing it on to its output channel. |
GenerateInt | Generates an infinite (constant) sequence of ints. |
IdentityInt | This copies its input stream to its output stream, adding a one-place buffer to the stream. |
IntegrateInt | This is a running-sum integrator of the ints on its input stream to its output stream. |
Merge2Int | Merges two strictly increasing int input streams into one strictly increasing output stream. |
MergeInt | Merges an array of strictly increasing int input streams into one strictly increasing output stream. |
MultInt | Scales an integer stream. |
MultiplexInt | Fair multiplexes its input integer stream array into one output stream (carrying source channel and data pairs). |
NandInt | Bitwise nands two integer streams to one stream. |
NorInt | Bitwise nors two integer streams to one stream. |
NumbersInt | Plugs together a network of low-level stateless components to generate the sequence of natural numbers. |
OrInt | Bitwise ors two integer streams to one stream. |
PairsInt | Generates sums of successive pairs of input values. |
ParaplexInt | Parallel multiplexes its input integer stream array on to one output stream. |
Plex2Int | Fair multiplexes two integer streams into one. |
PlexInt | Fair multiplexes its input integer stream array into one output stream. |
PlusInt | Sums two integer streams to one stream. |
PrefixInt | Prefixes a user-supplied integer to the int stream flowing through. |
PrinterInt | Prints each int from its input channel to a PrintStream. |
ProcessReadInt | Reads one int from its input channel. |
ProcessWriteInt | Writes one int to its output channel. |
SignInt | Converts each input int to a String, prefixing it with a user-defined sign. |
SquaresInt | Generates the integer stream 1*1, 2*2, 3*3, etc by a somewhat unusual route. |
SubstituteInt | Substitutes a user-configured constant for each integer in the stream flowing through. |
SuccessorInt | Adds one to each integer in the stream flowing through. |
TailInt | The output stream is the tail of its input stream. |
TimesInt | Multiplies two integer streams to one stream. |
XorInt | Bitwise xors two integer streams to one stream. |