Advertisement

The Interplay of Theory and Practice in a Parallel Object-Oriented Language

  • Pierre America
Conference paper
Part of the Workshops in Computing book series (WORKSHOPS COMP.)

Abstract

In this paper we give an overview of the techniques that have been used to describe the semantics of the language POOL in a formal way. POOL is a language designed to program a high-performance parallel machine. It was described independently in an operational way and in a denotational way, and these descriptions were subsequently proved to be equivalent. A number of other semantic techniques have also been applied to POOL. Finally we discuss the practical usefulness of this kind of semantic studies.

Keywords

Parallel Machine Operational Semantic Unique Fixed Point Semantic Function Graph Grammar 
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. [AB87]
    Pierre America and Jaco de Bakker. Designing equivalent semantic models for process creation. In Marisa Venturini Zilli, editor, Mathematical Models for the Semantics of Parallelism, 1987, 21–80, Lecture Notes in Computer Science 280, Springer-Verlag.CrossRefGoogle Scholar
  2. [ABKR86]
    Pierre America, Jaco de Bakker, Joost N. Kok, and Jan Rutten. Operational semantics of a parallel object-oriented language. In Conference Record of the 13th Symposium on Principles of Programming Languages, St. Petersburg, Florida, January 13–15, 1986, 194–208.Google Scholar
  3. [ABKR88]
    Pierre America, Jaco de Bakker, Joost N. Kok, and Jan Rutten. Denotational semantics of a parallel object-oriented language. ESPRIT Project 415 Document 190, Philips Research Laboratories, Eindhoven, the Netherlands, January 1988. (To appear in Information and Computation.) Google Scholar
  4. [Agh86]
    Gul Agha. Actors: A Model of Concurrent Computation in Distributed Systems. MIT Press, 1986.Google Scholar
  5. [AKO87]
    P. M. G. Apers, M. L. Kersten, and A. C. M. Oerlemans. PRISMA database machine: a distributed, main-memory approach. PRISMA Project Document 175, Philips Research Laboratories, Eindhoven, the Netherlands, October 1987.Google Scholar
  6. [Ame85]
    Pierre America. Definition of the programming language POOL-T. ESPRIT Project 415 Document 91, Philips Research Laboratories, Eindhoven, the Netherlands, September 1985.Google Scholar
  7. [Ame86]
    Pierre America. A proof theory for a sequential version of POOL. ES-PRIT Project 415 Document 188, Philips Research Laboratories, Eindhoven, the Netherlands, October 1986.Google Scholar
  8. [Ame87a]
    Pierre America. Inheritance and subtyping in a parallel object-oriented language. In Jean Bézivin, Jean-Marie Hullot, Pierre Cointe, and Henry Lieberman, editors, ECOOP’87: European Conference on ObjectOriented Programming, Paris, France, June 15–17, 1987, 234–242, Lecture Notes in Computer Science 276, Springer-Verlag.Google Scholar
  9. [Ame87b]
    Pierre America. POOL-T a parallel object-oriented language. In Akinori Yonezawa and Mario Tokoro, editors, Object-Oriented Concurrent Programming, 199–220, MIT Press, 1987.Google Scholar
  10. [Ame88a]
    Pierre America. Definition of POOL2, a parallel object-oriented language. ESPRIT Project 415 Document 364, Philips Research Laboratories, Eindhoven, the Netherlands, April 1988.Google Scholar
  11. [Ame88b]
    Pierre America. Rationale for the design of POOL2. ESPRIT Project 415 Document 393, Philips Research Laboratories, Eindhoven, the Netherlands, April 1988.Google Scholar
  12. [AR88]
    Pierre America and Jan Rutten. Solving reflexive domain equations in a category of complete metric spaces. In M. Main, A. Melton, M. Mislove, and D. Schmidt, editors, Mathematical Foundations of Programming Language Semantics, 1988, 254–288, Lecture Notes in Computer Science 298, Springer-Verlag.CrossRefGoogle Scholar
  13. [BBK85]
    J. C. M. Baeten, J. A. Bergstra, and J. W. Klop. On the consistency of Koomen’s fair abstraction rule. Report CS-R8511, Centre for Mathematics and Computer Science, Amsterdam, the Netherlands, May 1985.Google Scholar
  14. [BJOT86]
    W. J. H. J. Bronnenberg, M. D. Janssens, E. A. M. Odijk, and R. A. H. van Twist. The architecture of DOOM. In P. Treleaven and M. Vanneschi, editors, Future Parallel Computers: An Advanced Course, Pisa, Italy, June 9–20, 1986, 227–269, Lecture Notes in Computer Science 272, Springer-Verlag.Google Scholar
  15. [BK84]
    J. A. Bergstra and J. W. Klop. Process algebra for synchronous communication. Information and Control, 60:109–137, 1984.MathSciNetMATHCrossRefGoogle Scholar
  16. [BK85]
    J. A. Bergstra and J. W. Klop. Algebra of communicating processes with abstraction. Theoretical Computer Science, 37(1):77–121, May 1985.MathSciNetMATHCrossRefGoogle Scholar
  17. [BKO86]
    J. A. Bergstra, J. W. Klop, and E.-R. Olderog. Failures without chaos: a new process semantics for fair abstraction. Report CS-R8625, Centre for Mathematics and Computer Science, Amsterdam, the Netherlands, August 1986.Google Scholar
  18. [Boe86]
    Frank S. de Boer. A proof rule for process creation. In Martin Wirsing, editor, Formal Description of Programming Concepts III Proceedings of the Third IFIP WG 2.2 Working Conference, G1. Avernæs, Ebberup, Denmark, August 25–28, 1986, 23–50, North-Holland.Google Scholar
  19. [BZ82]
    J. W. de Bakker and J. I. Zucker. Processes and the denotational semantics of concurrency. Information and Control, 54:70–120, 1982.MathSciNetMATHCrossRefGoogle Scholar
  20. [Cli81]
    William Douglas Clinger. Foundations of actor semantics. Technical Report 633, Massachusetts Institute of Technology, Artificial Intelligence Laboratory, May 1981.Google Scholar
  21. [DD86]
    W. Damm and G. Döhmen. The POOL-machine: a top level specification for a distributed object-oriented machine. ESPRIT Project 415 Document 1, Lehrstuhl für Informatik, RWTH Aachen, Aachen, West Germany, October 3, 1986.Google Scholar
  22. [DDH87]
    W. Damm, G. Döhmen, and P. den Haan. Using AADL to specify distributed computer architectures a case study. In J.W. de Bakker, editor, Deliverable D3 of the Working Group on Semantics and Proof Techniques, chapter 1.4, ESPRIT Project 415, Philips Research Laboratories, Eindhoven, the Netherlands, October 1987.Google Scholar
  23. [Dug66]
    J. Dugundji. Topology. Allyn and Bacon, Boston, Massachusetts, 1966.MATHGoogle Scholar
  24. [Eng77]
    R. Engelking. General Topology. Polish Scientific Publishers, 1977.MATHGoogle Scholar
  25. [Gor79]
    Michael J. C. Gordon. The Denotational Description of Programming Languages: An Introduction. Springer-Verlag, 1979.Google Scholar
  26. [Hew77]
    Carl Hewitt. Viewing control structures as patterns of passing messages. Artificial Intelligence, 8:323–364, 1977.CrossRefGoogle Scholar
  27. [HP79]
    Matthew Hennessy and Gordon Plotkin. Full abstraction for a simple parallel programming language. In J. Bečvář, editor, Proceedings of the 8th Symposium on Mathematical Foundations of Computer Science, 1979, 108–120, Lecture Notes in Computer Science 74.Google Scholar
  28. [JR87]
    D. Janssens and G. Rozenberg. Basic notions of actor grammars: a graph grammar model for actor computation. In H. Ehrig, M. Nagl, G. Rozenberg, and A. Rosenfeld, editors, Graph-Grammars and Their Application to Computer Science, 1987, 280–298, Lecture Notes in Computer Science 291, Springer-Verlag.CrossRefGoogle Scholar
  29. [KR87]
    Joost N. Kok and Jan J. M. M. Rutten. Contractions in comparing concurrency semantics. Report CS-R8755, Centre for Mathematics and Computer Science, Amsterdam, the Netherlands, November 1987.Google Scholar
  30. [Lei88]
    George Leih. Actor graph grammars and POOL2. PRISMA Project Document 265, University of Leiden, Department of Computer Science, February 1988.Google Scholar
  31. [Odi87]
    Eddy A. M. Odijk. The DOOM system and its applications: a survey of ESPRIT 415 subproject A. In J. W. de Bakker, A. J. Nijman, and P. C. Treleaven, editors, Proceedings of PARLE: Parallel Architectures and Languages Europe. Volume I: Parallel Architectures, Eindhoven, the Netherlands, June 15–19, 1987, 461–479, Lecture Notes in Computer Science 258, Springer-Verlag.Google Scholar
  32. [Plo76]
    Gordon D. Plotkin. A powerdomain construction. SIAM Journal on Computing, 5(3):452–487, September 1976.MathSciNetMATHCrossRefGoogle Scholar
  33. [P1o81]
    Gordon D. Plotkin. A structural approach to operational semantics. Report DAIMI FN-19, Aarhus University, Computer Science Department, Aarhus, Denmark, September 1981.Google Scholar
  34. [Plo83]
    Gordon D. Plotkin. An operational semantics for CSP. In D. Bjørner, editor, Formal Description of Programming Concepts II, 1983, 199–223, North-Holland.Google Scholar
  35. [Rut88]
    Jan Rutten. Semantic equivalence for a parallel object-oriented language. Report CS-R88XX, Centre for Mathematics and Computer Science, Amsterdam, the Netherlands, 1988. (To appear.)Google Scholar
  36. [Smy78]
    Michael B. Smyth. Power domains. Journal of Computer and System Sciences, 16:23–36, 1978.MathSciNetCrossRefGoogle Scholar
  37. [Vaa86]
    Frits W. Vaandrager. Process algebra semantics for POOL. Report CSR8629, Centre for Mathematics and Computer Science, Amsterdam, the Netherlands, August 1986.Google Scholar

Copyright information

© Springer-Verlag London 1990

Authors and Affiliations

  • Pierre America
    • 1
  1. 1.Philips Research LaboratoriesEindhovenNetherlands

Personalised recommendations