Foundations of session types and behavioural contracts

H Hüttel, I Lanese, VT Vasconcelos, L Caires… - ACM Computing …, 2016 - dl.acm.org
Behavioural type systems, usually associated to concurrent or distributed computations,
encompass concepts such as interfaces, communication protocols, and contracts, in addition …

Behavioral types in programming languages

D Ancona, V Bono, M Bravetti, J Campos… - … and Trends® in …, 2016 - nowpublishers.com
A recent trend in programming language research is to use behavioral type theory to ensure
various correctness properties of largescale, communication-intensive systems. Behavioral …

Hybrid session verification through endpoint API generation

R Hu, N Yoshida - … Conference on Fundamental Approaches to Software …, 2016 - Springer
This paper proposes a new hybrid session verification methodology for applying session
types directly to mainstream languages, based on generating protocol-specific endpoint …

A linear decomposition of multiparty sessions for safe distributed programming

A Scalas, O Dardha, R Hu… - … European Conference on …, 2017 - drops.dagstuhl.de
Abstract Multiparty Session Types (MPST) is a ty** discipline for message-passing
distributed processes that can ensure properties such as absence of communication errors …

Distributed programming using role-parametric session types in go: statically-typed endpoint APIs for dynamically-instantiated communication structures

D Castro, R Hu, SS Jongmans, N Ng… - Proceedings of the ACM …, 2019 - dl.acm.org
This paper presents a framework for the static specification and safe programming of
message passing protocols where the number and kinds of participants are dynamically …

Static deadlock detection for concurrent go by global session graph synthesis

N Ng, N Yoshida - Proceedings of the 25th International Conference on …, 2016 - dl.acm.org
Go is a programming language developed at Google, with channel-based concurrent
features based on CSP. Go can detect global communication deadlocks at runtime when all …

[PDF][PDF] A Predicate Transformer for Choreographies: Computing Preconditions in Choreographic Programming

SS Jongmans, P van den Bos - European Symposium on …, 2022 - library.oapen.org
Construction and analysis of distributed systems is difficult; choreographic programming is a
deadlock-freedom-by-construction approach to simplify it. In this paper, we present a new …

Programming language implementations with multiparty session types

N Yoshida - Active Object Languages: Current Research Trends, 2024 - Springer
Session types provide a ty** discipline for communication systems, and a number of
programming languages are integrated with session types. This paper provides a survey of …

Deadlock-free session types in linear Haskell

W Kokke, O Dardha - Proceedings of the 14th ACM SIGPLAN …, 2021 - dl.acm.org
Priority Sesh is a library for session-typed communication in Linear Haskell which offers
strong compile-time correctness guarantees. Priority Sesh offers two deadlock-free APIs for …

Discourje: Runtime verification of communication protocols in clojure

R Hamers, SS Jongmans - Tools and Algorithms for the Construction and …, 2020 - Springer
This paper presents Discourje: a runtime verification framework for communication protocols
in Clojure. Discourje guarantees safety of protocol implementations relative to specifications …