English
Related papers

Related papers: Intrinsically Typed Sessions With Callbacks

200 papers

Many variants of type theory extend a basic theory with additional primitives or properties like univalence, guarded recursion or parametricity, to enable constructions or proofs that would be harder or impossible to do in the original…

Programming Languages · Computer Science 2022-07-05 Joris Ceulemans , Andreas Nuyts , Dominique Devriese

The fast growth of service-oriented programming (SOP) is evident in this day and age of the Internet, and handling communication is of paramount importance in SOP. Session types are a formalism that is proposed to specify interactions…

Programming Languages · Computer Science 2018-10-30 Hanwen Wu , Hongwei Xi

Up to now session types have been used under the assumptions of point to point communication, to ensure the linearity of session endpoints, and reliable communication, to ensure send/receive duality. In this paper we define a session type…

Programming Languages · Computer Science 2014-06-16 Dimitrios Kouzapas , Ramūnas Gutkovas , Simon J. Gay

In dependently typed programming, proofs of basic, structural properties can be embedded implicitly into programs and do not need to be written explicitly. Besides saving the effort of writing separate proofs, a most distinguishing and…

Programming Languages · Computer Science 2021-03-09 Hsiang-Shang Ko

Multiparty session types (MPST) provide a rigorous foundation for verifying the safety and liveness of concurrent systems. However, existing approaches often force a difficult trade-off: classical, projection-based techniques are…

Programming Languages · Computer Science 2025-12-01 David Castro-Perez , Francisco Ferreira , Sung-Shik Jongmans

This paper introduces a new theory of multiparty session types based on symmetric sum types, by which we can type non-deterministic orchestration choice behaviours. While the original branching type in session types can represent a choice…

Distributed, Parallel, and Cluster Computing · Computer Science 2010-12-01 Lasse Nielsen , Nobuko Yoshida , Kohei Honda

\emph{Session types} have proved viable in expressing and verifying the protocols of message-passing systems. While message passing is a dominant concurrency paradigm in practice, real world software is written without session types. A…

Programming Languages · Computer Science 2022-06-01 Ruo Fei Chen , Stephanie Balzer , Bernardo Toninho

Linear type systems have a long and storied history, but not a clear path forward to integrate with existing languages such as OCaml or Haskell. In this paper, we study a linear type system designed with two crucial properties in mind:…

Programming Languages · Computer Science 2017-11-09 Jean-Philippe Bernardy , Mathieu Boespflug , Ryan R. Newton , Simon Peyton Jones , Arnaud Spiwack

Session types are used to describe communication protocols in distributed systems and, as usual in type theories, session subtyping characterizes substitutability of the communicating processes. We investigate the (un)decidability of…

Programming Languages · Computer Science 2017-07-20 Mario Bravetti , Marco Carbone , Gianluigi Zavattaro

Sessions are a fundamental notion in message-passing systems. A session is an abstract notion of communication between parties where each one owns an endpoint. Session types are types that are assigned to the endpoints and that are used to…

Logic in Computer Science · Computer Science 2023-07-13 Luca Ciccone

A multiparty session formalises a set of concurrent communicating participants. We propose a type system for multiparty sessions where some communications between participants can be ignored. This allows us to type some sessions with global…

Logic in Computer Science · Computer Science 2023-08-22 Franco Barbanera , Mariangiola Dezani-Ciancaglini

Behavioural type systems ensure more than the usual safety guarantees of static analysis. They are based on the idea of "types-as-processes", providing dedicated type algebras for particular properties, ranging from protocol compatibility…

Programming Languages · Computer Science 2014-08-08 Simon J. Gay , Nils Gesbert , António Ravara

Session Types offer a typing discipline that allows protocol specifications to be used during type-checking, ensuring that implementations adhere to a given specification. When looking to realise global session types in a dependently typed…

Programming Languages · Computer Science 2019-04-03 Jan de Muijnck-Hughes , Edwin Brady , Wim Vanderbauwhede

Context-free session types provide a typing discipline for recursive structured communication protocols on bidirectional channels. They overcome the restriction of regular session type systems to tail recursive protocols. This extension…

Programming Languages · Computer Science 2022-08-03 Bernardo Almeida , Andreia Mordido , Peter Thiemann , Vasco T. Vasconcelos

Session types are formal specifications of communication protocols, allowing protocol implementations to be verified by typechecking. Up to now, session type disciplines have assumed that the communication medium is reliable, with no loss…

Logic in Computer Science · Computer Science 2024-08-07 Dimitrios Kouzapas , Ramunas Forsberg Gutkovas , A. Laura Voinea , Simon J. Gay

In the field of speaker verification, session or channel variability poses a significant challenge. While many contemporary methods aim to disentangle session information from speaker embeddings, we introduce a novel approach using an…

Audio and Speech Processing · Electrical Eng. & Systems 2023-09-27 Hee-Soo Heo , KiHyun Nam , Bong-Jin Lee , Youngki Kwon , Minjae Lee , You Jin Kim , Joon Son Chung

Session types provide a typing discipline for message-passing systems. However, most session type approaches assume an ideal world: one in which everything is reliable and without failures. Yet this is in stark contrast with distributed…

Programming Languages · Computer Science 2023-05-16 Adam D. Barwell , Ping Hou , Nobuko Yoshida , Fangyi Zhou

Many type systems include infinite types. In session type systems, which are the focus of this paper, infinite types are important because they allow the specification of communication protocols that are unbounded in time. Usually infinite…

Programming Languages · Computer Science 2022-01-21 Simon J. Gay , Diogo Poças , Vasco T. Vasconcelos

We build on a fine-grained analysis of session-based interaction as provided by the linear logic typing disciplines to introduce the SAM, an abstract machine for mechanically executing session-typed processes. A remarkable feature of the…

Programming Languages · Computer Science 2024-01-22 Luís Caires , Bernardo Toninho

Session types are becoming popular and have been integrated in several mainstream programming languages. Nevertheless, while many programming languages consider asynchronous fifo channel communication, the notion of subtyping used in…

Programming Languages · Computer Science 2021-04-30 Lorenzo Bacchiani , Mario Bravetti , Julien Lange , Gianluigi Zavattaro