Asynchronous session types and progress for object oriented languages

  • Authors:
  • Mario Coppo;Mariangiola Dezani-Ciancaglini;Nobuko Yoshida

  • Affiliations:
  • Dipartimento di Informatica, Università di Torino;Dipartimento di Informatica, Università di Torino;Department of Computing, Imperial College London

  • Venue:
  • FMOODS'07 Proceedings of the 9th IFIP WG 6.1 international conference on Formal methods for open object-based distributed systems
  • Year:
  • 2007

Quantified Score

Hi-index 0.00

Visualization

Abstract

A session type is an abstraction of a sequence of heterogeneous values sent over one channel between two communicating processes. Session types have been introduced to guarantee consistency of the exchanged data and, more recently, progress of the session, i.e. the property that once a communication has been established, well-formed programs will never starve at communication points. A relevant feature which influences progress is whether the communication is synchronous or asynchronous. In this paper, we first formulate a typed asynchronous multi-threaded object-oriented language with thread spawning, iterative and higher order sessions. Then we study its progress through a new effect system. As far as we know, ours is the first session type system which assures progress in asynchronous communication.