scispace - formally typeset
Open AccessJournal Article

Typing the Behavior of Software Components using Session Types

TLDR
It is shown how session types allow not only high level specifications of complex interactions, but also the definition of powerful interoperability tests at the protocol level, namely compatibility and substitutability of components.
Abstract
This paper proposes the use of session types to extend with behavioural information the simple descriptions usually provided by software component interfaces. We show how session types allow not only high level specifications of complex interactions, but also the definition of powerful interoperability tests at the protocol level, namely compatibility and substitutability of components. We present a decidable proof system to verify these notions, which makes our approach of a pragmatic nature.

read more

Content maybe subject to copyright    Report

Citations
More filters
Journal ArticleDOI

Linear type theory for asynchronous session types

TL;DR: A multithreaded functional language with session types is defined, which unifies, simplifies and extends previous work, and significantly simplifies session types in the functional setting, clarifies their essential features and provides a secure foundation for language developments such as polymorphism and object-orientation.
Book ChapterDOI

A theory of design-by-contract for distributed multiparty interactions

TL;DR: An assertion method, based on the π-calculus with full recursion, is presented, which generalises the notion of DbC to multiparty distributed interactions to enable effective specification and verification of distributed multiparty protocols.
Journal ArticleDOI

Language Primitives and Type Discipline for Structured Communication-Based Programming Revisited: Two Systems for Higher-Order Session Communication

TL;DR: The issues involved in higher-order session communication are discussed, a formulation of the recursive types as well as proofs of the Subject Reduction and Type Safety Theorems of the original session typing system by Honda-Vasconcelos-Kubo in ESOP'98 are presented and a variant which allows a more liberal higher- order session communication is proposed, based on an idea of Gay and Hole.
Proceedings ArticleDOI

Session types revisited

TL;DR: It is shown thatsession types are encodable in ordinary π types, relying on linear and variant types, and the properties of session types are derived as straightforward corollaries, exploiting the corresponding properties of ordinaryπ types.
References
More filters
Journal ArticleDOI

A formal basis for architectural connection

TL;DR: The key idea is to define architectural connectors as explicit semantic entities as a collection of protocols that characterize each of the participant roles in an interaction and how these roles interact.
Book ChapterDOI

Language Primitives and Type Discipline for Structured Communication-Based Programming

TL;DR: Basic language constructs and a type discipline are introduced as a foundation of structured communication-based concurrent programming, which offers a high-level type abstraction of interactive behaviours of programs as well as guaranteeing the compatibility of interaction patterns between processes in a well-typed program.

Language Primitives and Type Discipline for Structured Communication-Based Programming, Subject Reduction and Type Safety Theorems

TL;DR: In this article, the authors introduce basic language constructs and a type discipline as a foundation of structured communication-based concurrent programming, which allow programmers to organize programs as a combination of multiple flows of (possibly unbounded) reciprocal interactions in a simple and elegant way, subsuming the preceding communication primitives such as method invocation and rendez-vous.
Journal ArticleDOI

Protocol specifications and component adaptors

TL;DR: Leveraging the information provided by protocols, it is shown how adaptors can be automatically generated from a high-level description, called an interface mapping, and dene notions of interface compatibility based upon protocols and how compatibility can be checked.
Related Papers (5)
Trending Questions (1)
What is the proposed innovation of typing master software?

The provided paper is about typing the behavior of software components using session types. It does not mention anything about a typing master software.