Chord (concurrency)

A chord is a concurrency construct available in Polyphonic C♯ and Cω inspired by the join pattern of the join-calculus. A chord is a function body that is associated with multiple function headers and cannot execute until all function headers are called.

Synchronicity
Cω defines two types of functions: synchronous and asynchronous. A synchronous function acts like a normal function in typical imperative languages: upon invocation the function body is executed, and a return value may or may not be returned to the caller. An asynchronous function acts similarly to a synchronous function that immediately returns void, but also triggers execution of the actual code in another thread/execution context.