Compositional Connectors Sample Clauses

Compositional Connectors. Every channel represents a simple connector with two ends. More complex connectors are constructed in Reo out of the simpler ones using its join operation. Joining of two connectors is plugging their ends together into nodes such that the data exchanged through the ports that coincide on the same node are synchronized, but the I/O behaviors of the other ports remain as they were before. Reo defines a connector as a set of channel ends and their connecting channels organized in a graph of nodes and edges such that: - Zero or more channel ends coincide on every node. - Every channel end coincides on exactly one node. - There is an edge between two (not necessarily distinct) nodes if and only if there is a channel end which coincides on each of those nodes. Let x be a channel end and N be a node. We use x N to denote that x coincides on N , and xˆ to denote the unique node on which the channel end x coincides. For a node N , the set [N ] = x x N is the set of all channel ends coincide on N and is partitioned into the disjoint sets Src(N ) and Snk (N ), denoting the sets of source and sink channel ends that coincide on N , respectively. The nodes of a Reo network represent sets of channel ends. They arise through Reo’s join operator and can be classified into source, sink and mixed nodes, depending on whether all channel ends that coincide on a node N are source ends (then N is a source node), sink ends (then N is a sink node) or whether N combines sink and source ends (then N is a mixed node). Source and sink nodes represent input and output ports where components might connect to the network. The mixed nodes serve as routers where data items can be transmitted through the network. More formally, a node N is a source node if Scr (N ) ̸= ∅∧ Snk (N ) = ∅. Analogously, N is a sink node if Snk (N ) A node N is a mixed node if Scr (N ) ̸= ∅ ∧ Snk (N ) ̸= ∅. ∅∧ Scr (N ) = ∅. Components are connected only to sink or source nodes, they cannot connect to mixed nodes. At most one component can be connected to a source or a sink node. A source node acts as a replicator, while a sink node acts as a nondeterministic merger. Consider the fol- lowing source node: