Runtime verification for decentralised and distributed systems

A Francalanza, JA Pérez, C Sánchez - Lectures on Runtime Verification …, 2018 - Springer
This chapter surveys runtime verification research related to distributed systems. We report
solutions that study how to monitor system with some distributed characteristic, solutions that …

Gobra: Modular specification and verification of go programs

FA Wolf, L Arquint, M Clochard, W Oortwijn… - … on Computer Aided …, 2021 - Springer
Go is an increasingly-popular systems programming language targeting, especially,
concurrent and distributed systems. Go differentiates itself from other imperative languages …

Less is more: multiparty session types revisited

A Scalas, N Yoshida - Proceedings of the ACM on Programming …, 2019 - dl.acm.org
Multiparty Session Types (MPST) are a ty** discipline ensuring that a message-passing
process implements a multiparty session protocol, without errors. In this paper, we propose a …

Haschor: Functional choreographic programming for all (functional pearl)

G Shen, S Kashiwa, L Kuper - Proceedings of the ACM on Programming …, 2023 - dl.acm.org
Choreographic programming is an emerging paradigm for programming distributed systems.
In choreographic programming, the programmer describes the behavior of the entire system …

A static verification framework for message passing in go using behavioural types

J Lange, N Ng, B Toninho, N Yoshida - Proceedings of the 40th …, 2018 - dl.acm.org
The Go programming language has been heavily adopted in industry as a language that
efficiently combines systems programming with concurrency. Go's concurrency primitives …

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 …

[BOK][B] Introduction to Choreographies

F Montesi - 2023 - books.google.com
In concurrent and distributed systems, processes can complete tasks together by playing
their parts in a joint plan. The plan, or protocol, can be written as a choreography: a formal …

Fencing off go: liveness and safety for channel-based programming

J Lange, N Ng, B Toninho, N Yoshida - ACM SIGPLAN Notices, 2017 - dl.acm.org
Go is a production-level statically typed programming language whose design features
explicit message-passing primitives and lightweight threads, enabling (and encouraging) …

Choreography automata

F Barbanera, I Lanese, E Tuosto - International Conference on …, 2020 - Springer
Abstract Automata models are well-established in many areas of computer science and are
supported by a wealth of theoretical results including a wide range of algorithms and …

A multiparty session ty** discipline for fault-tolerant event-driven distributed programming

M Viering, R Hu, P Eugster, L Ziarek - Proceedings of the ACM on …, 2021 - dl.acm.org
This paper presents a formulation of multiparty session types (MPSTs) for practical fault-
tolerant distributed programming. We tackle the challenges faced by session types in the …