In the control-flow programming we started with the caller waits for the recipient to be determined.
With semi-data-flow programming--the message, not the sender, waits for the recipient to be determined.