Advertisement

Comparative semantics for linear arrays of communicating processes

A study of the UNIX fork and pipe commands
  • J. W. de Bakker
  • F. van Breugel
  • A. de Bruin
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 711)

Abstract

Operational (O) and denotational (D) semantic models are designed for a language incorporating a version of the UNIX fork and pipe commands. Taking a simple while language as starting point, a number of programming constructs are added which achieve that a program can generate a dynamically evolving linear array of processes connected by channels. Over these channels sequences of values (‘streams’) are transmitted. Both O and D are defined as (unique) fixed point of a contractive higher order operator. This allows a smooth proof that O and D are equivalent. Additional features are the use of hiatons, and of the closely related syntactic resumptions and semantic continuations.

Keywords

Operational Semantic Output Channel Input Channel Unique Fixed Point Input Stream 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. [AW85]
    S.K. Abdali and D.S. Wise. Standard, Storeless Semantics for ALGOL-style Block Structure and Call-by-Name. In A. Melton, editor, Proceedings of the 1st International Conference on Mathematical Foundations of Programming Semantics, volume 239 of Lecture Notes in Computer Science, pages 1–19, Manhattan, April 1985. Springer-Verlag.Google Scholar
  2. [Ban22]
    S. Banach. Sur les Opérations dans les Ensembles Abstraits et leurs Applications aux Equations Intégrales. Fundaments Mathematicae, 3:133–181, 1922.Google Scholar
  3. [Ben82]
    D.B. Benson. Machine-Level Semantics for Nondeterministic, Parallel Programs. In M. Dezani-Ciancaglini and U. Montanari, editors, Proceedings of the 5th International Symposium on Programming, volume 137 of Lecture Notes in Computer Science, pages 15–25, Turin, April 1982. Springer-Verlag.Google Scholar
  4. [BR92]
    J.W. de Bakker and J.J.M.M. Rutten, editors. Ten Years of Concurrency Semantics, selected papers of the Amsterdam Concurrency Group. World Scientific, Singapore, 1992.Google Scholar
  5. [Bru86]
    A. de Bruin. Experiments with Continuation Semantics: jumps, backtracking, dynamic networks. PhD thesis, Vrije Universiteit, Amsterdam, May 1986.Google Scholar
  6. [HSS91]
    T. Hagerup, A. Schmitt, and H. Seidl. FORK: A High-Level Language for PRAMs. In E.H.L. Aarts, J. van Leeuwen, and M. Rem, editors, Proceedings of the 3rd International PARLE Conference, volume 505 of Lecture Notes in Computer Science, pages 304–320, Eindhoven, June 1991. Springer-Verlag.Google Scholar
  7. [KK92]
    E. Klein and K. Koskimies. How to Pipeline Parsing with Parallel Semantic Analysis. Structured Programming, 13(3):99–107,1992.Google Scholar
  8. [KR90]
    J.N. Kok and J.J.M.M. Rutten. Contractions in Comparing Concurrency Semantics. Theoretical Computer Science, 76(2/3):179–222, 1990.Google Scholar
  9. [MA89]
    C. McDonald and L. Allison. Denotational Semantics of a Command Interpreter and their Implementation in Standard ML. The Computer Journal, 32(5):422–431, October 1989.Google Scholar
  10. [Par83]
    D. Park. The “Fairness” Problem and Nondeterministic Computing Networks. In J.W. de Bakker and J. van Leeuwen, editors, Foundations of Computer Science IV, Distributed Systems, part 2: Semantics and Logic, volume 159 of Mathematical Centre Tracts, pages 133–161. Mathematical Centre, Amsterdam, 1983.Google Scholar
  11. [Plo81]
    G.D. Plotkin. A Structural Approach to Operational Semantics. Report DAIMI FN-19, Aarhus University, Aarhus, September 1981.Google Scholar
  12. [RS83]
    J.-C. Raoult and R. Sethi. Properties of a Notation for Combining Functions. Journal of the ACM, 30(3):595–611, July 1983.Google Scholar
  13. [RS92]
    G. Rünger and K. Sieber. A Trace-Based Denotational Semantics for the PRAM-Language FORK. Report 1/1992, Universität des Saarlandes, Saarbrücken, 1992.Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1993

Authors and Affiliations

  • J. W. de Bakker
    • 1
    • 2
  • F. van Breugel
    • 1
    • 2
  • A. de Bruin
    • 3
  1. 1.Department of Software TechnologyCWIAB Amsterdam
  2. 2.Department of Mathematics and Computer ScienceVrije UniversiteitMC Amsterdam
  3. 3.Faculty of EconomicsErasmus UniversiteitDR Rotterdam

Personalised recommendations