Pipe-calculus: Difference between revisions

Line 322: Line 322:
* In pipe-calculus there is no counterpart of ''name hiding'' that prevents interference between two groups of processes using the same channel name for communication. Since there is no general, bidirectional parallel composition, we don't need a hiding primitive. The pipe operation naturally restricts communication to a pipeline.
* In pipe-calculus there is no counterpart of ''name hiding'' that prevents interference between two groups of processes using the same channel name for communication. Since there is no general, bidirectional parallel composition, we don't need a hiding primitive. The pipe operation naturally restricts communication to a pipeline.
* In pipe-calculus, if a process fails to synchronize, it is aborted. This is different from the usual implementation where a process that fails to synchronize does not evolve, it "keeps waiting" for a message, opening up the possibility for asynchronous communication.
* In pipe-calculus, if a process fails to synchronize, it is aborted. This is different from the usual implementation where a process that fails to synchronize does not evolve, it "keeps waiting" for a message, opening up the possibility for asynchronous communication.
== Extensions ==
* Recursion (μ-recursion, top level recursion, regular grammars)
* Stack (context-free grammars)
* Guarded choice
* Ordered choice (PEG, backtracking, local context)
* Intersection


== Notes ==
== Notes ==


<references />
<references />
283

edits