English
Related papers

Related papers: Special Delivery: Programming with Mailbox Types (…

200 papers

Actor languages such as Erlang and Elixir are widely used for implementing scalable and reliable distributed applications, but the informally-specified nature of actor communication patterns leaves systems vulnerable to costly errors such…

Programming Languages · Computer Science 2026-03-04 Simon Fowler , Raymond Hu

Recent mainstream programming languages such as Erlang or Scala have renewed the interest on the Actor model of concurrency. However, the literature on the static analysis of actor systems is still lacking of mature formal methods. In this…

Programming Languages · Computer Science 2012-06-11 Silvia Crafa

We propose a type system for reasoning on protocol conformance and deadlock freedom in networks of processes that communicate through unordered mailboxes. We model these networks in the mailbox calculus, a mild extension of the asynchronous…

Programming Languages · Computer Science 2018-01-15 Ugo de'Liguoro , Luca Padovani

Actor-based systems like Erlang/OTP power critical infrastructure -- from telecommunications to messaging platforms -- handling millions of concurrent connections with legendary reliability. Yet these systems lack static guarantees about…

Programming Languages · Computer Science 2025-12-08 Miguel de Oliveira Guerreiro

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

Context: Actor-based programming languages offer many essential features for developing modern distributed reactive systems. These systems exploit the actor model's isolation property to fulfill their performance and scalability demands.…

Programming Languages · Computer Science 2020-11-02 Humberto Rodriguez Avila , Joeri De Koster , Wolfgang De Meuter

Actor systems are a flexible model of concurrent and distributed programming, which are efficiently implementable, and avoid many classic concurrency bugs by construction. However actor systems must still deal with the challenge of messages…

Programming Languages · Computer Science 2025-09-16 Colin S. Gordon

Text-based communication is highly favoured as a communication method, especially in business environments. As a result, it is often abused by sending malicious messages, e.g., spam emails, to deceive users into relaying personal…

Information Retrieval · Computer Science 2022-04-14 Annalisa Occhipinti , Louis Rogers , Claudio Angione

Programmers regularly use strings to encode many types of data, such as Unix file paths, URLs, and email addresses, that are conceptually different. However, existing mainstream programming languages use a unified string type to represent…

Software Engineering · Computer Science 2025-01-22 Fengmin Zhu , Andreas Zeller

We model actors based on truly concurrent process algebra, and capture the actor model in the following characteristics: (1) Concurrency: all actors execute concurrently; (2) Asynchrony: an actor receives and sends messages asynchronously;…

Logic in Computer Science · Computer Science 2021-10-29 Yong Wang

Channel- and actor-based programming languages are both used in practice, but the two are often confused. Languages such as Go provide anonymous processes which communicate using buffers or rendezvous points---known as channels---while…

Programming Languages · Computer Science 2017-05-11 Simon Fowler , Sam Lindley , Philip Wadler

Recent advances in large language models have led to the rise of software systems (i.e. agents) that execute with increasing autonomy on behalf of users in open, multi-party settings, interacting with untrusted counterparts and managing…

Programming Languages · Computer Science 2026-05-06 Kiran Gopinathan , Jack Feser , Michelangelo Naim , Zenna Tavares , Eli Bingham

Erlang's dynamic typing discipline can lead to runtime errors that persist even after process restarts. Some of these runtime errors could be prevented through static type checking. While Erlang provides a type specification language, the…

Programming Languages · Computer Science 2026-03-24 Albert Schimpf , Stefan Wehr , Annette Bieniusa

Elixir is a dynamically-typed functional language running on the Erlang Virtual Machine, designed for building scalable and maintainable applications. Its characteristics have earned it a surging adoption by hundreds of industrial actors…

Programming Languages · Computer Science 2024-01-01 Giuseppe Castagna , Guillaume Duboc , José Valim

Message forwarding protocols are protocols in which a chain of agents handles transmission of a message. Each agent forwards the received message to the next agent in the chain. For example, TLS middleboxes act as intermediary agents in…

Cryptography and Security · Computer Science 2022-01-24 Zach Smith , Hugo Jonker , Sjouke Mauw , Hyunwoo Lee

Role-playing is a crucial capability of Large Language Models (LLMs), enabling a wide range of practical applications, including intelligent non-player characters, digital twins, and emotional companions. Evaluating this capability in LLMs…

Computation and Language · Computer Science 2024-12-10 Lei Wang , Jianxun Lian , Yi Huang , Yanqi Dai , Haoxuan Li , Xu Chen , Xing Xie , Ji-Rong Wen

Pattern matching is a powerful tool which is part of many functional programming languages as well as computer algebra systems such as Mathematica. Among the existing systems, Mathematica offers the most expressive pattern matching.…

Symbolic Computation · Computer Science 2017-05-03 Manuel Krebber

Brand and Zafiropulo's notion of Communicating Finite-State Machines (CFSMs) provides a succinct and powerful model of message-passing concurrency, based around channels. However, a major variant of message-passing concurrency is not…

Programming Languages · Computer Science 2023-04-14 Dominic Orchard , Mihail Munteanu , Paulo Torrens

This paper introduces language-based agent control (LBAC), a new programming model for agentic applications that brings techniques from programming languages and language-based security to the problem of agent control. In conventional…

Programming Languages · Computer Science 2026-05-14 Timothy Zhou , Loris D'Antoni , Nadia Polikarpova

Join patterns are a high-level programming construct for message-passing applications. They offer an intuitive and declarative approach for specifying how concurrent and distributed components coordinate, possibly depending on complex…

Programming Languages · Computer Science 2026-03-09 Ayman Hussein , Philipp Haller , Ioannis Karras , Hernán Melgratti , Alceste Scalas , Emilio Tuosto
‹ Prev 1 2 3 10 Next ›