A programming language combining simply typed, call-by-name procedures with asynchronous communicating processes, assuming fair parallel execution. Idealized CSP generalises Anthony Hoare's original CSP and Kahn's networks of deterministic processes, and is closely related to Parallel Algol by Stephen Brookes of CMU.
Procedures permit the encapsulation of common protocols and parallel programming idioms. Local variables and local channel declarations provide a way to delimit the scope of interference between parallel agents, and allow a form of concurrent object-oriented programming.
[Was this language also designed by Brookes?]