Communicating Sequential Processes
Processes (concurrent threads)
- run sequential code
- communicate process-to-process via channels
Channels are point-to-point and synchronous (unbuffered)
- standard is one-to-one, but many-to-one, one-to-many, and many-to-many have been implemented
- Buffering can easily be added.