A distributed object-oriented language with session types. (English) Zbl 1151.68347

De Nicola, Rocco (ed.) et al., Trustworthy global computing. International symposium, TGC 2005, Edinburgh, UK, April 7–9, 2005. Revised selected papers. Berlin: Springer (ISBN 3-540-30007-4/pbk). Lecture Notes in Computer Science 3705, 299-318 (2005).
Summary: In the age of the world-wide web and mobile computing, programming communication-centric software is essential. Thus, programmers and program designers are exposed to new levels of complexity, such as ensuring the correct composition of communication behaviours and guaranteeing deadlock-freedom of their protocols.
This paper proposes the language \(\mathcal L_{doos}\), a simple distributed object-oriented language augmented with session communication primitives and types. \(\mathcal L_{doos}\) provides a flexible object-oriented programming style for structural interaction protocols by prescribing channel usages within signatures of distributed classes.
We develop a typing system for \(\mathcal L_{doos}\) and prove its soundness with respect to the operational semantics. We also show that in a well-typed \(\mathcal L_{doos}\) program, there will never be a connection error, a communication error, nor an incorrect completion between server-client interactions. These results demonstrate that a consistent integration of object-oriented language features and session types can statically check the consistent composition of communication protocols.
For the entire collection see [Zbl 1089.68006].


68N15 Theory of programming languages
68N19 Other programming paradigms (object-oriented, sequential, concurrent, automatic, etc.)
68M14 Distributed systems
Full Text: DOI