English
Related papers

Related papers: Deconfined Global Types for Asynchronous Sessions

200 papers

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

We propose algebraic protocols that enable the definition of protocol templates and session types analogous to the definition of domain-specific types with algebraic datatypes. Parameterized algebraic protocols subsume all regular as well…

Programming Languages · Computer Science 2023-04-10 Andreia Mordido , Janek Spaderna , Peter Thiemann , Vasco T. Vasconcelos

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

Programming Languages · Computer Science 2023-07-25 Jonah Pears , Laura Bocchi , Andy King

Synchronous computation models simplify the design and the verification of fault-tolerant distributed systems. For efficiency reasons such systems are designed and implemented using an asynchronous semantics. In this paper, we bridge the…

Programming Languages · Computer Science 2019-01-23 Andrei Damien , Cezara Dragoi , Alexandru Militaru , Josef Widder

The importance of subtyping to enable a wider range of well-typed programs is undeniable. However, the interaction between subtyping, recursion, and polymorphism is not completely understood yet. In this work, we explore subtyping in a…

Programming Languages · Computer Science 2021-03-30 Ankush Das , Henry DeYoung , Andreia Mordido , Frank Pfenning

Multiparty Session Types (MPST) are a typing discipline for communication-centric systems, guaranteeing communication safety, deadlock freedom and protocol compliance. Several works have emerged which model failures and introduce…

Programming Languages · Computer Science 2023-01-27 Matthew Alan Le Brun , Ornela Dardha

Communicating systems comprise diverse software components across networks. To ensure their robustness, modern programming languages such as Rust provide both strongly typed channels, whose usage is guaranteed to be affine (at most once),…

Programming Languages · Computer Science 2022-04-29 Nicolas Lagaillardie , Rumyana Neykova , Nobuko Yoshida

X10 is a modern language built from the ground up to handle future parallel systems, from multicore machines to cluster configurations. We take a closer look at a pair of synchronisation mechanisms: finish and clocks. The former waits for…

Programming Languages · Computer Science 2011-10-20 Francisco Martins , Vasco T. Vasconcelos , Tiago Cogumbreiro

We present a system of session types based on adjoint logic which generalize standard binary session types. Our system allows us to uniformly capture several new behaviors in the space of asynchronous message-passing communication,…

Programming Languages · Computer Science 2019-04-03 Klaas Pruiksma , Frank Pfenning

Task abstractions and taxonomic structures for tasks are useful for designers of interactive data analysis approaches, serving as design targets and evaluation criteria alike. For individual data types, dataset-specific taxonomic structures…

Graphics · Computer Science 2022-09-22 Yasara Peiris , Clara-Maria Barth , Elaine M. Huang , Jürgen Bernard

We present a framework for the distributed monitoring of networks of components that coordinate by message-passing, following multiparty session protocols specified as global types. We improve over prior works by (i) supporting components…

Programming Languages · Computer Science 2023-10-04 Bas van den Heuvel , Jorge A. Pérez , Rares A. Dobre

A long-standing shortcoming of statically typed functional languages is that type checking does not rule out pattern-matching failures (run-time match exceptions). Refinement types distinguish different values of datatypes; if a program…

Programming Languages · Computer Science 2020-09-22 Khurram A. Jafery , Jana Dunfield

We propose a semantically grounded theory of session types which relies on intersection and union types. We argue that intersection and union types are natural candidates for modeling branching points in session types and we show that the…

Programming Languages · Computer Science 2011-01-25 Luca Padovani

A compromised system component can issue message sequences that are legal while also leading the overall system into unsafe states. Such stealthy attacks are challenging to characterize, because message interfaces in standard languages…

Cryptography and Security · Computer Science 2025-03-17 Arthur Amorim , Max Taylor , Trevor Kann , William L. Harrison , Gary T. Leavens , Lance Joneckis

Distributed antennas must be phase-calibrated (phase-synchronized) for certain operations, such as reciprocity-based joint coherent downlink beamforming, to work. We use rigorous signal processing tools to analyze the accuracy of…

Information Theory · Computer Science 2024-01-23 Erik G. Larsson

Context: Tables are ubiquitous formats for data. Therefore, techniques for writing correct programs over tables, and debugging incorrect ones, are vital. Our specific focus in this paper is on rich types that articulate the properties of…

Programming Languages · Computer Science 2021-11-23 Kuang-Chen Lu , Ben Greenman , Shriram Krishnamurthi

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

We propose a type system to analyze the time consumed by multi-threaded imperative programs with a shared global memory, which delineates a class of safe multi-threaded programs. We demonstrate that a safe multi-threaded program runs in…

Computational Complexity · Computer Science 2012-04-02 Jean-Yves Marion , Romain Péchoux

MAG$\pi$ is a Multiparty, Asynchronous and Generalised $\pi$-calculus that introduces timeouts into session types as a means of reasoning about failure-prone communication. Its type system guarantees that all possible message-loss is…

Programming Languages · Computer Science 2024-04-26 Matthew Alan Le Brun , Ornela Dardha

This dissertation introduces executable refinement types, which refine structural types by semi-decidable predicates, and establishes their metatheory and accompanying implementation techniques. These results are useful for undecidable type…

Programming Languages · Computer Science 2014-03-14 Kenneth Knowles
‹ Prev 1 8 9 10 Next ›