Communicating Sequential Processes - Hoare, C (1977)