Home > Nodes

Reo Nodes

Reo allows to construct complex connectors out of simpler ones, where channels constitute atomic connectors. For this purpose, Reo introduces the concept of a node. Every single channel end is a singleton node. Channels compose joining there ends, which are singleton nodes, to form more complex nodes.

Recall that there is only two types of channel ends: source and sink. Hence, we can have only two types of singleton nodes, which we can combine to yield three types of nodes:

Node types

Just as in the case of channel ends, whether a node is used for input or output, depends on our point of view: a connector circuit uses a source node for its input (from its environment into the circuit), and a sink node for its output (from the circuit to its environment). From the point of view of a component that uses a connector, a source node is used for output (from the component into the connector) and a sink node is used for input (from the connector into the component).

Because in our presentation here we focus only on Reo channels and connectors (as opposed to the external entities that use them), unless stated otherwise, our vantage point is always that of channels and connectors. Therefore, for convenience, we use the terms input and output to refer to source and sink, respectively.