English
Related papers

Related papers: Minimal Session Types (Extended Version)

200 papers

Session types are a type-based approach to the verification of message-passing programs. They specify communication structures essential to enforcing program correctness; by relying on sequencing constructs, a session type can precisely…

Programming Languages · Computer Science 2025-05-14 Alen Arslanagić , Jorge A. Pérez , Dan Frumin

Session types are a discipline for the static verification of message-passing programs. A session type specifies a channel's protocol as sequences of exchanges. It is most relevant to investigate session-based concurrency by identifying the…

Programming Languages · Computer Science 2024-01-24 Alen Arslanagic , Jorge A. Pérez , Anda-Amelia Palamariuc

Session types allow communication protocols to be specified type-theoretically so that protocol implementations can be verified by static type checking. We extend previous work on session types for distributed object-oriented languages in…

Programming Languages · Computer Science 2017-01-11 Simon J. Gay , Nils Gesbert , António Ravara , Vasco T. Vasconcelos

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

We propose a type-based analysis to infer the session protocols of channels in an ML-like concurrent functional language. Combining and extending well-known techniques, we develop a type-checking system that separates the underlying ML type…

Programming Languages · Computer Science 2016-04-14 Carlo Spaccasassi , Vasileios Koutavas

The scenario-based specification of a large distributed system is usually naturally decomposed into various modules. The integration of specification modules contrasts to the parallel composition of program components, and includes various…

Programming Languages · Computer Science 2012-10-09 Guoxin Su , Mingsheng Ying , Chengqi Zhang

Session types have emerged as a typing discipline for communication protocols. Existing calculi with session types come equipped with many different primitives that combine communication with the introduction or elimination of the…

Programming Languages · Computer Science 2019-11-12 Peter Thiemann , Vasco T. Vasconcelos

We present a type checking algorithm for establishing a session-based discipline in the pi calculus of Milner, Parrow and Walker. Our session types are qualified as linear or unrestricted. Linearly typed communication channels are…

Programming Languages · Computer Science 2011-08-12 Marco Giunti

Session types describe the structure of communications implemented by channels. In particular, they prescribe the sequence of communications, whether they are input or output actions, and the type of value exchanged. Crucial to any language…

Logic in Computer Science · Computer Science 2023-06-22 Dimitris Mostrous , Vasco T. Vasconcelos

Session types model structured communication-based programming. In particular, binary session types for the pi-calculus describe communication between exactly two participants in a distributed scenario. Adding sessions to the pi-calculus…

Programming Languages · Computer Science 2014-08-27 Ornela Dardha

Session types offer a type-based discipline for enforcing communication protocols in distributed programming. We have previously formalized simple session types in the setting of multi-threaded $\lambda$-calculus with linear types. In this…

Programming Languages · Computer Science 2017-04-25 Hanwen Wu , Hongwei Xi

All formalizations of session types rely on linear types for soundness as session-typed communication channels must change their type at every operation. Embedded language implementations of session types follow suit. They either rely on…

Programming Languages · Computer Science 2023-03-03 Peter Thiemann

In concurrent and distributed systems, software components are expected to communicate according to predetermined protocols and APIs - and if a component does not observe them, the system's reliability is compromised. Furthermore, isolating…

Programming Languages · Computer Science 2021-05-25 Christian Batrolo Burlò , Adrian Francalanza , Alceste Scalas

Session types are a rich type discipline, based on linear types, that lifts the sort of safety claims that come with type systems to communications. However, web-based applications and microservices are often written in a mix of languages,…

Programming Languages · Computer Science 2019-11-20 Atsushi Igarashi , Peter Thiemann , Yuya Tsuda , Vasco T. Vasconcelos , Philip Wadler

Session types denote message protocols between concurrent processes, allowing a type-safe expression of inter-process communication. Although previous work demonstrate a well-defined notion of subtyping where processes have different…

Programming Languages · Computer Science 2021-11-29 Chuta Sano , Stephanie Balzer , Frank Pfenning

Information flow control type systems statically restrict the propagation of sensitive data to ensure end-to-end confidentiality. The property to be shown is noninterference, asserting that an attacker cannot infer any secrets from made…

Programming Languages · Computer Science 2021-04-30 Farzaneh Derakhshan , Stephanie Balzer , Limin Jia

Session types capture precise protocol structure in concurrent programming, but do not specify properties of the exchanged values beyond their basic type. Refinement types are a form of dependent types that can address this limitation,…

Logic in Computer Science · Computer Science 2012-11-20 Pedro Baltazar , Dimitris Mostrous , Vasco T. Vasconcelos

Session types are a typed approach to message-passing concurrency, where types describe sequences of intended exchanges over channels. Session type systems have been given strong logical foundations via Curry-Howard correspondences with…

Logic in Computer Science · Computer Science 2024-08-23 Bas van den Heuvel , Jorge A. Pérez

Session types are types for specifying the protocols that communicating processes must follow in a concurrent system. When composing two or more well-typed processes, a session typing system must check whether such processes are multiparty…

Logic in Computer Science · Computer Science 2023-05-26 Marco Carbone , Sonia Marin , Carsten Schürmann

Session types employ a linear type system that ensures that communication channels cannot be implicitly copied or discarded. As a result, many mechanizations of these systems require modeling channel contexts and carefully ensuring that…

Programming Languages · Computer Science 2023-09-25 Chuta Sano , Ryan Kavanagh , Brigitte Pientka
‹ Prev 1 2 3 10 Next ›