We develop a denotational semantics for POOL, a parallel object-oriented programming language. The main contribution of this semantics is an accurate mathematical model of the most important concept in object-oriented programming: the object. This is achieved by structuring the semantics in layers working at three different levels: for statements, objects and programs. For each of these levels we define a specialized mathematical domain of processes, which we use to assign a meaning to each language construct. This is done in the mathematical framework of complete metric spaces. We also define operators that translate between these domains. At the program level we give a precise definition of the observable input/output behaviour of a particular program, which could be used at a later stage to decide the issue of full abstractness. We illustrate our semantic techniques by first applying them to a toy language similar to CSP.

, , ,
Springer
Philips Research Laboratories, Eindhoven, The Netherlands
doi.org/10.1007/BFb0019441
Research and Education in Concurrent Systems International Workshop
Computer Security

America, P., & Rutten, J. (1990). A layered semantics for a parallel object-oriented language. In Lecture Notes in Computer Science (pp. 91–123). Springer. doi:10.1007/BFb0019441