English
Related papers

Related papers: Stateful Behavioral Types for ABS

200 papers

A type system is introduced for a generic Object Oriented programming language in order to infer resource upper bounds. A sound andcomplete characterization of the set of polynomial time computable functions is obtained. As a consequence,…

Programming Languages · Computer Science 2018-02-20 Emmanuel Hainry , Romain Péchoux

Inspired by Kobayashi's type system for lock freedom, we define a behavioral type system for ensuring progress in a language of binary sessions. The key idea is to annotate actions in session types with priorities representing the urgency…

Programming Languages · Computer Science 2013-12-11 Luca Padovani

Agents can achieve effective interaction with previously unknown other agents by maintaining beliefs over a set of hypothetical behaviours, or types, that these agents may have. A current limitation in this method is that it does not…

Multiagent Systems · Computer Science 2019-06-27 Stefano V. Albrecht , Peter Stone

Component-based development is challenging in a distributed setting, for starters considering programming a task may involve the assembly of loosely-coupled remote components. In order for the task to be fulfilled, the supporting…

Programming Languages · Computer Science 2020-09-18 Zorica Savanović , Letterio Galletta , Hugo Torres Vieira

Global types are formal specifications that describe communication protocols in terms of their global interactions. We present a new, streamlined language of global types equipped with a trace-based semantics and whose features and…

Programming Languages · Computer Science 2015-07-01 Giuseppe Castagna , Mariangiola Dezani-Ciancaglini , Luca Padovani

Side effects are a core part of practical programming. However, they are often hard to reason about, particularly in a concurrent setting. We propose a foundation for reasoning about concurrent side effects using sessions. Primarily, we…

Programming Languages · Computer Science 2016-02-12 Dominic Orchard , Nobuko Yoshida

We describe a generative approach that enables concurrent typestate-oriented programming in Java and other mainstream languages. The approach allows programmers to implement objects exposing a state-sensitive interface using a high-level…

Programming Languages · Computer Science 2019-04-03 Rosita Gerbo , Luca Padovani

Distributed systems have become increasingly prevalent in the software industry. Due to their intrinsic complexity, much research has focused on the verification of their behaviour. An active research line is around behaviour models that…

Programming Languages · Computer Science 2026-04-09 Francisco Parrinha , João Mota , António Ravara

This paper presents a qualitative study that investigates the effects of some language choices in expressing the trigger part of a trigger-action rule on the users' mental models. Specifically, we explored how 11 non-programmer participants…

Human-Computer Interaction · Computer Science 2023-10-11 Margherita Andrao , Barbara Treccani , Massimo Zancanaro

This paper presents the first implementation of session types in a dynamically-typed language - Python. Communication safety of the whole system is guaranteed at runtime by monitors that check the execution traces comply with an associated…

Programming Languages · Computer Science 2013-12-11 Rumyana Neykova

Typestate-oriented programming is an extension of the OO paradigm in which objects are modeled not just in terms of interfaces but also in terms of their usage protocols, describing legal sequences of method calls, possibly depending on the…

Programming Languages · Computer Science 2016-07-12 Silvia Crafa , Luca Padovani

We propose a method to write and check a specification including quantifiers using behaviors, i.e., input-output pairs. Our method requires the following input from the user: (1) answers to a finite number of queries, each of which presents…

Software Engineering · Computer Science 2013-07-29 Paul C. Attie , Fadi A. Zaraket , Mohamad Noureddine , Farah El-Hariri

Actor coordination armoured with a suitable protocol description language has been a pressing problem in the actors community. We study the applicability of multiparty session type (MPST) protocols for verification of actor programs. We…

Distributed, Parallel, and Cluster Computing · Computer Science 2014-06-16 Rumyana Neykova , Nobuko Yoshida

Multiparty session types are a type system that can ensure the safety and liveness of distributed peers via the global specification of their interactions. To construct a global specification from a set of distributed uncontrolled…

Formal Languages and Automata Theory · Computer Science 2013-04-09 Pierre-Malo Deniélou , Nobuko Yoshida

We present a small, formal language for specifying the behavior of simple console I/O programs. The design is driven by the concrete application case of testing interactive Haskell programs written by students. Specifications are…

Programming Languages · Computer Science 2025-06-27 Oliver Westphal , Janis Voigtländer

We give an algebraic characterization of the syntax and semantics of a class of simply-typed languages, such as the language PCF: we characterize simply-typed binding syntax equipped with reduction rules via a universal property, namely as…

Logic in Computer Science · Computer Science 2012-08-28 Benedikt Ahrens

Peer-to-peer systems are the most resilient form of distributed computing, but the design of robust protocols for their coordination is difficult. This makes it hard to specify and reason about global behaviour of such systems. This paper…

Distributed, Parallel, and Cluster Computing · Computer Science 2023-05-09 Roland Kuhn , Hernán Melgratti , Emilio Tuosto

Type-and-effect systems are a widely-used approach to program verification, verifying the result of a computation using types, and the behavior using effects. This paper extends an effect system for verifying temporal, value-dependent…

Programming Languages · Computer Science 2022-07-22 Taro Sekiyama , Hiroshi Unno

We propose a design for a functional programming language for autonomous agents, built off the ideas and motivations of Behavior Trees (BTs). BTs are a popular model for designing agents behavior in robotics and AI. However, as their growth…

Programming Languages · Computer Science 2024-12-13 Oliver Biggar , Iman Shames

Session types are types for specifying the protocols that communicating processes must follow in a concurrent system. When composing two or more well-typed processes, a session typing system must check whether such processes are multiparty…

Logic in Computer Science · Computer Science 2023-05-26 Marco Carbone , Sonia Marin , Carsten Schürmann