Hybrid Session Verification Through Endpoint API Generation

This paper proposes a new hybrid session verification methodology for applying session types directly to mainstream languages, based on generating protocol-specific endpoint APIs from multiparty session types. The API generation promotes static type checking of the behavioural aspect of the source p...

Full description

Saved in:
Bibliographic Details
Published inFundamental Approaches to Software Engineering pp. 401 - 418
Main Authors Hu, Raymond, Yoshida, Nobuko
Format Book Chapter
LanguageEnglish
Published Berlin, Heidelberg Springer Berlin Heidelberg 2016
SeriesLecture Notes in Computer Science
Subjects
Online AccessGet full text
ISBN9783662496640
366249664X
ISSN0302-9743
1611-3349
DOI10.1007/978-3-662-49665-7_24

Cover

More Information
Summary:This paper proposes a new hybrid session verification methodology for applying session types directly to mainstream languages, based on generating protocol-specific endpoint APIs from multiparty session types. The API generation promotes static type checking of the behavioural aspect of the source protocol by mapping the state space of an endpoint in the protocol to a family of channel types in the target language. This is supplemented by very light run-time checks in the generated API that enforce a linear usage discipline on instances of the channel types. The resulting hybrid verification guarantees the absence of protocol violation errors during the execution of the session. We implement our methodology for Java as an extension to the Scribble framework, and use it to specify and implement compliant clients and servers for real-world protocols such as HTTP and SMTP.
ISBN:9783662496640
366249664X
ISSN:0302-9743
1611-3349
DOI:10.1007/978-3-662-49665-7_24