Academia.eduAcademia.edu

An operational framework for value-passing processes

1994, Proceedings of the 21st ACM SIGPLAN-SIGACT symposium on Principles of programming languages - POPL '94

Abstract

This paper develops a semantic framework for concurrent languages with value passing. An operation analogous to substitution in the -calculus is given, and a semantics is given for a value-passing version of Milner's Calculus of Communicating Systems (CCS). An operational equivalence is then de ned and shown to coincide with Milner's (early) bisimulation equivalence. We also show how semantics may given for languages with asynchronous communication primitives. In contrast with existing approaches to value passing, this semantics does not reduce data exchange to pure synchronization over (potentially in nite) families of ports indexed by data, and it avoids variable renamings that are not local to processes engaged in communication.

Key takeaways

  • In order to specify the new semantics, we rst introduce the new set of actions we consider.
  • Our asynchronous operational semantics is given in terms of the relation 7 ?!
  • While the former issue is beyond the scope of this paper, this section shows how the operational semantics given in the previous section may be altered to model di erent approaches to bu ering.
  • To de ne the semantics of the altered language we rst introduce rules for resolving explicit substitutions; these appear in Figure 4.
  • In this paper we have presented an alternative semantics for a concurrent language with value passing.