public func conjoin<X,Y,Z,C>(other: SafeLink<C>) -> SafeLink<(X,Y,Z,C)> where B == (X,Y,Z)

conjoin is a compliment to branch. Within the context of a branch it is natural and expected to create parallel execution chains. If the process definition wishes at some point to combine the results of these execution chains, then conjoin should be used. conjoin returns a SafeLink which waits for both the receiver and the argument SafeLinks created results. Those results are combined into a tuple (X, Y, Z, C) which is passed to the child links of the returned SafeLink