English
Related papers

Related papers: Session Types With Multiple Senders Single Receive…

200 papers

While there exist several successful techniques for supporting programmers in deriving static resource bounds for sequential code, analyzing the resource usage of message-passing concurrent processes poses additional challenges. To meet…

Programming Languages · Computer Science 2018-04-30 Ankush Das , Jan Hoffmann , Frank Pfenning

Multiparty session typing (MPST) is a formal method to make concurrent programming simpler. The idea is to use type checking to automatically prove safety (protocol compliance) and liveness (communication deadlock freedom) of…

Programming Languages · Computer Science 2024-07-02 Sung-Shik Jongmans

We propose an interpretation of multiparty sessions with asynchronous communication as Flow Event Structures. We introduce a new notion of global type for asynchronous multiparty sessions, ensuring the expected properties for sessions,…

Logic in Computer Science · Computer Science 2026-04-08 Ilaria Castellani , Mariangiola Dezani-Ciancaglini , Paola Giannini

FreeST is an experimental concurrent programming language. Based on a core linear functional programming language, it features primitives to fork new threads, and for channel creation and communication. A powerful type system of…

Programming Languages · Computer Science 2019-04-03 Bernardo Almeida , Andreia Mordido , Vasco T. Vasconcelos

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

We view channels as the main form of resources in a message-passing programming paradigm. These channels need to be carefully managed in settings where resources are scarce. To study this problem, we extend the pi-calculus with primitives…

Logic in Computer Science · Computer Science 2010-04-08 Edsko de Vries , Adrian Francalanza , Matthew Hennessy

Go is a production-level statically typed programming language whose design features explicit message-passing primitives and lightweight threads, enabling (and encouraging) programmers to develop concurrent systems where components interact…

Programming Languages · Computer Science 2017-03-01 Julien Lange , Nicholas Ng , Bernardo Toninho , Nobuko Yoshida

We present a calculus that models a form of process interaction based on copyless message passing, in the style of Singularity OS. The calculus is equipped with a type system ensuring that well-typed processes are free from memory faults,…

Programming Languages · Computer Science 2015-07-01 Viviana Bono , Luca Padovani

Message-passing concurrency is a popular computation model that underlies several programming languages like, e.g., Erlang, Akka, and (to some extent) Go and Rust. In particular, we consider a message-passing concurrent language with…

Programming Languages · Computer Science 2022-10-07 Germán Vidal

Mixed-choice has long been barred from models of asynchronous communication since it compromises the decidability of key properties of communicating finite-state machines. Session types inherit this restriction, which precludes them from…

Logic in Computer Science · Computer Science 2025-07-30 Jonah Pears , Laura Bocchi , Maurizio Murgia , Andy King

We consider a sender-receiver game with an outside option for the sender. After the cheap talk phase, the receiver makes a proposal to the sender, which the latter can reject. We study situations in which the sender's approval is crucial to…

Optimization and Control · Mathematics 2020-01-22 Françoise Forges , Jérôme Renault

We propose a calculus for asynchronous multiparty sessions where input choices with different senders are allowed in processes. We present a type system that accepts such input races provided they do not hinder lock-freedom.

Logic in Computer Science · Computer Science 2022-03-25 Ilaria Castellani , Mariangiola Dezani-Ciancaglini , Paola Giannini

Ensuring correctness of communication in distributed systems remains challenging. To address this, Multiparty session types (MPST), initially introduced by Honda et al. [52, 53], offer a type discipline in which a programmer or architect…

Programming Languages · Computer Science 2026-05-25 Ping Hou , Nobuko Yoshida , Iona Kuhn

Today's software systems are highly distributed and interconnected, and they increasingly rely on communication to achieve their goals; due to their societal importance, security and trustworthiness are crucial aspects for the correctness…

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

Multi-party object coordination - across object-capability systems, smart-contract platforms, distributed actors, and event-sourced architectures - is shaped by six structural properties: authenticated provenance, opaque encapsulation,…

Distributed, Parallel, and Cluster Computing · Computer Science 2026-05-19 Christopher Goes

Session is an open-source, public-key-based secure messaging application which uses a set of decentralised storage servers and an onion routing protocol to send end-to-end encrypted messages with minimal exposure of user metadata. It does…

Cryptography and Security · Computer Science 2024-07-04 Kee Jefferys , Maxim Shishmarev , Simon Harman

By requiring co-ordination to take place using explicit message passing instead of relying on shared memory, actor-based programming languages have been shown to be effective tools for building reliable and fault-tolerant distributed…

Programming Languages · Computer Science 2016-08-12 Simon Fowler

Despite the increasing maturity of model-driven software development (MDD), some research challenges remain open in the field of information systems (IS). For instance, there is a need to improve modelling techniques so that they cover…

Software Engineering · Computer Science 2011-02-02 Sergio España , Arturo González , Óscar Pastor , Marcela Ruiz

To celebrate the 30th edition of EXPRESS and the 20th edition of SOS we overview how session types can be expressed in a type theory for the standard $\pi$-calculus by means of a suitable encoding. The encoding allows one to reuse results…

Programming Languages · Computer Science 2023-09-15 Ilaria Castellani , Ornela Dardha , Luca Padovani , Davide Sangiorgi