English
Related papers

Related papers: Relating Functional and Imperative Session Types

200 papers

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

Program equivalence is the fulcrum for reasoning about and proving properties of programs. For noninterference, for example, program equivalence up to the secrecy level of an observer is shown. A powerful enabler for such proofs are logical…

Programming Languages · Computer Science 2022-08-31 Farzaneh Derakhshan , Stephanie Balzer

Session types have emerged as a powerful paradigm for structuring communication-based programs. They guarantee type soundness and session fidelity for concurrent programs with sophisticated communication protocols. As type soundness proofs…

Programming Languages · Computer Science 2019-08-09 Peter Thiemann

Session types are a type discipline for communication channel endpoints which allow conformance to protocols to be checked statically. Safely implementing session types requires linearity, usually in the form of a linear type system.…

Programming Languages · Computer Science 2020-06-01 Simon Fowler

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

In recent work, we have developed a session types discipline for a calculus that features the usual constructs for session establishment and communication, but also two novel constructs that enable communicating processes to be stopped,…

Programming Languages · Computer Science 2013-12-11 Cinzia Di Giusto , Jorge A. Pérez

Session types guarantee that message-passing processes adhere to predefined communication protocols. Prior work on session types has focused on deterministic languages but many message-passing systems, such as Markov chains and randomized…

Programming Languages · Computer Science 2020-11-19 Ankush Das , Di Wang , Jan Hoffmann

We introduce a type and effect system, for an imperative object calculus, which infers "sharing" possibly introduced by the evaluation of an expression, represented as an equivalence relation among its free variables. This direct…

Programming Languages · Computer Science 2018-08-03 Paola Giannini , Tim Richter , Marco Servetto , Elena Zucca

We propose the integration of staged metaprogramming into a session-typed message passing functional language. We build on a model of contextual modal type theory with multi-level contexts, where contextual values, closing arbitrary terms…

Programming Languages · Computer Science 2026-01-22 Pedro Ângelo , Atsushi Igarashi , Yuito Murase , Vasco T. Vasconcelos

We present an extension of System F with higher-order context-free session types. The mixture of functional types with session types has proven to be a challenge for type equivalence formalization: whereas functional type equivalence is…

Logic in Computer Science · Computer Science 2022-03-25 Diana Costa , Andreia Mordido , Diogo Poças , Vasco T. Vasconcelos

Session types express and enforce safe communication in concurrent message-passing systems by statically capturing the interaction protocols between processes in the type. Recent works extend session types with arithmetic refinements, which…

Programming Languages · Computer Science 2026-02-09 Toby Ueno , Ankush Das

We present an asynchronous calculus for multiparty sessions with mixed choice, which extends the Simple MultiParty Session framework in order to support nondeterministic choices with both input and output prefixes. Global types -- equipped…

Logic in Computer Science · Computer Science 2026-04-09 Franco Barbanera , Mariangiola Dezani-Ciancaglini

Inspired by Kobayashi's type system for lock freedom, we define a behavioral type system for ensuring progress in a language of binary sessions. The key idea is to annotate actions in session types with priorities representing the urgency…

Programming Languages · Computer Science 2013-12-11 Luca Padovani

We tackle the problem of statically ensuring that message-passing programs never run into deadlocks. We focus on concurrent functional programs governed by context-free session types, which can express rich tree-like structures not…

Programming Languages · Computer Science 2026-02-24 Andreia Mordido , Jorge A. Pérez

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

We consider the problem of designing typed concurrent calculi with non-deterministic choice in which types leverage linearity for controlling resources, thereby ensuring strong correctness properties for processes. This problem is…

Logic in Computer Science · Computer Science 2024-12-18 Bas van den Heuvel , Daniele Nantes-Sobrinho , Joseph W. N. Paulus , Jorge A. Pérez

Timed session types formalise timed communication protocols between two participants at the endpoints of a session. They feature a decidable compliance relation, which generalises to the timed setting the progress-based compliance between…

Logic in Computer Science · Computer Science 2023-06-22 Massimo Bartoletti , Tiziana Cimoli , Maurizio Murgia

We study functional and concurrent calculi with non-determinism, along with type systems to control resources based on linearity. The interplay between non-determinism and linearity is delicate: careless handling of branches can discard…

Logic in Computer Science · Computer Science 2023-10-02 Bas van den Heuvel , Joseph W. N. Paulus , Daniele Nantes-Sobrinho , Jorge A. Pérez

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

Declarative styles such as functional programming (FP) are rapidly gaining ground on their imperative cousins, including procedural and object-oriented programming. The shift is subtle because it is happening within the context of…

Software Engineering · Computer Science 2016-06-22 Morgan C. Benton , Nicole M. Radziwill