Advertisement

On the action semantics of concurrent programming languages

  • Peter D. Mosses
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 666)

Abstract

Action semantics is a framework for semantic description of programming languages. In this framework, actions are semantic entities, used to represent the potential behaviour of programs—also the contributions that parts of programs make to such behaviour. The notation for expressing actions, called action notation, is combinator-based. It is used in much the same way that lambda-notation is used in denotational semantics. However, the essence of action notation is operational, rather than mathematical, and its meaning is formally defined by a structural operational semantics together with a bisimulation equivalence.

This paper briefly motivates action semantics, and explains the basic concepts. It then illustrates the use of the framework by giving an action semantic description of a small example language. This language includes a simple form of concurrency: tasks that may synchronize by means of rendezvous. The paper also discusses the operational semantics of action notation, focusing on the primitive actions that represent asynchronous message transmission and process initiation.

Keywords

semantics action semantics action notation concurrency synchronization asynchrony distributed processing 

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. [1]
    E. Astesiano. Inductive and operational semantics. In E. J. Neuhold and M. Paul, editors, Formal Description of Programming Concepts, IFIP State-of-the-Art Report, pages 51–136. Springer-Verlag, 1991.Google Scholar
  2. [2]
    D. Goodman. The Complete HyperCard Handbook. Bantam, 1987.Google Scholar
  3. [3]
    C. A. R. Hoare. Communicating sequential processes. Commun. ACM, 21:666–677, 1978.Google Scholar
  4. [4]
    C. A. R. Hoare. Communicating Sequential Processes. Prentice-Hall, 1985.Google Scholar
  5. [5]
    G. Kahn. Natural semantics. In STACS'87, Proc. Symp. on Theoretical Aspects of Computer Science, number 247 in Lecture Notes in Computer Science. Springer-Verlag, 1987.Google Scholar
  6. [6]
    P. Krishnan and P. D. Mosses. Specifying asynchronous transfer of control. In RTFT'92, Proc. Symp. on Formal Techniques in Real-Time and Fault-Tolerant Systems, Delft, number 571 in Lecture Notes in Computer Science. Springer-Verlag, 1992.Google Scholar
  7. [7]
    R. Milner. A Calculus of Communicating Systems. Number 92 in Lecture Notes in Computer Science. Springer-Verlag, 1980.Google Scholar
  8. [8]
    R. Milner. Communication and Concurrency. Prentice-Hall, 1989.Google Scholar
  9. [9]
    R. Milner. Operational and algebraic semantics of concurrent processes. In J.van Leeuwen, A. Meyer, M. Nivat, M. Paterson, and D. Perrin, editors, Handbook of Theoretical Computer Science, volume B, chapter 19. Elsevier Science Publishers, Amsterdam; and MIT Press, 1990.Google Scholar
  10. [10]
    P. D. Mosses. Denotational semantics. In J. van Leeuwen, A. Meyer, M. Nivat, M. Paterson, and D. Perrin, editors, Handbook of Theoretical Computer Science, volume B, chapter 11. Elsevier Science Publishers, Amsterdam; and MIT Press, 1990.Google Scholar
  11. [11]
    P. D. Mosses. A practical introduction to denotational semantics. In E. J. Neuhold and M. Paul, editors, Formal Description of Programming Concepts, IFIP State-of-the-Art Report, pages 1–49. Springer-Verlag, 1991.Google Scholar
  12. [12]
    P. D. Mosses. Action Semantics. Number 26 in Cambridge Tracts in Theoretical Computer Science. Cambridge University Press, 1992.Google Scholar
  13. [13]
    G. D. Plotkin. A structural approach to operational semantics. Lecture Notes DAIMI FN-19, Computer Science Dept., Aarhus University, 1981. Now available only from University of Edinburgh.Google Scholar
  14. [14]
    D. A. Watt. Programming Language Syntax and Semantics. Prentice-Hall, 1991.Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1993

Authors and Affiliations

  • Peter D. Mosses
    • 1
  1. 1.Computer Science DepartmentAarhus UniversityAarhus CDenmark

Personalised recommendations