Join is an asynchronous message coordination and concurrency library based on concepts and techniques developed in JoCaml[1] and CĪ‰[2]. It is applicable both to multithreaded applications and to the orchestration of asynchronous message flows.

Channel is a C++ template library to provide name spaces for asynchronous, distributed message passing and event dispatching. Message senders and receivers bind to names in name space; binding and matching rules decide which senders will bind to which receivers; then message passing and event dispatching could happen among bound senders and receivers.