This paper suggests that input and output are basic primitives of programming and that parallel composition of communicating sequential processes is a fundamental program structuring method. When combined with a development of Dijkstra's guarded command, these concepts are surprisingly versatile. Their use is illustrated by sample solutions of a variety of a familiar programming exercises.
%0 Journal Article
%1 CSP
%A Hoare, C. A. R.
%C New York, NY, USA
%D 1978
%I ACM
%J Commun. ACM
%K CSP
%N 8
%P 666--677
%R 10.1145/359576.359585
%T Communicating Sequential Processes
%V 21
%X This paper suggests that input and output are basic primitives of programming and that parallel composition of communicating sequential processes is a fundamental program structuring method. When combined with a development of Dijkstra's guarded command, these concepts are surprisingly versatile. Their use is illustrated by sample solutions of a variety of a familiar programming exercises.
@article{CSP,
abstract = {This paper suggests that input and output are basic primitives of programming and that parallel composition of communicating sequential processes is a fundamental program structuring method. When combined with a development of Dijkstra's guarded command, these concepts are surprisingly versatile. Their use is illustrated by sample solutions of a variety of a familiar programming exercises.},
added-at = {2010-04-05T13:15:59.000+0200},
address = {New York, NY, USA},
author = {Hoare, C. A. R.},
biburl = {https://www.bibsonomy.org/bibtex/2bbc1e9954656673f6973e4e958a787ac/gron},
description = {Communicating Sequential Processes},
doi = {10.1145/359576.359585},
interhash = {5ab929cad0da48b990bac9d344cba2c4},
intrahash = {bbc1e9954656673f6973e4e958a787ac},
issn = {0001-0782},
journal = {Commun. ACM},
keywords = {CSP},
number = 8,
pages = {666--677},
publisher = {ACM},
timestamp = {2013-08-05T09:35:05.000+0200},
title = {Communicating Sequential Processes},
volume = 21,
year = 1978
}