English
Related papers

Related papers: Deadlock-Free Typestate-Oriented Programming

200 papers

Multiparty session types are designed to abstractly capture the structure of communication protocols and verify behavioural properties. One important such property is progress, i.e., the absence of deadlock. Distributed algorithms often…

Logic in Computer Science · Computer Science 2025-10-29 Lukas Bartl , Julian Linne , Kirstin Peters

Proximity gaps and correlated agreement have become central tools in the analysis of interactive oracle proofs of proximity (IOPPs) and code-based SNARKs. Informally, a proximity-gap statement says that for a structured set of words -- such…

Information Theory · Computer Science 2026-05-11 Chen Yuan , Ruiqi Zhu

The multiplicity of software projects' stakeholders and activities leads to the multiplicity of software specification views and thus creates the need to establish mutual consistency between them. The process of establishing such…

Software Engineering · Computer Science 2017-11-20 Alexandr Naumchev

The fixed parameter tractable (FPT) approach is a powerful tool in tackling computationally hard problems. In this paper, we link FPT results to classic artificial intelligence (AI) techniques to show how they complement each other.…

Artificial Intelligence · Computer Science 2019-07-24 Daniel Karapetyan , Andrew J. Parkes , Gregory Gutin , Andrei Gagarin

The Internet of Things (IoT) is growing fast. In 2018, there was approximately one connected device per person on earth and the number has been growing ever since. The devices interact with the environment via different modalities at the…

Programming Languages · Computer Science 2022-12-09 Mart Lubbers , Pieter Koopman , Rinus Plasmeijer

CLASS is a proof-of-concept general purpose linear programming language, flexibly supporting realistic concurrent programming idioms, and featuring an expressive linear type system ensuring that programs (1) never misuse or leak stateful…

Programming Languages · Computer Science 2025-05-28 Luís Caires

In the shared variable model of concurrency, guarded atomic actions restrict the possible interference between processes by regions of atomic execution. The guard specifies the condition for entering an atomic region. That is a convenient…

Programming Languages · Computer Science 2025-05-28 Shucai Yao , Emil Sekerinski

Multiparty session types are designed to abstractly capture the structure of communication protocols and verify behavioural properties. One important such property is progress, i.e., the absence of deadlock. Distributed algorithms often…

Logic in Computer Science · Computer Science 2024-02-14 Kirstin Peters , Uwe Nestmann , Christoph Wagner

In component-based development, approaches for property verification exist that avoid building the global system behavior of the component model. Typically, these approaches rely on the analysis of the local behavior of fixed sized…

Logic in Computer Science · Computer Science 2010-10-28 Christian Lambertz , Mila Majster-Cederbaum

We present TLLC which extends the Two-Level Linear dependent type theory (TLL) with session-based concurrency. Equipped with Martin-L\"{o}f style dependency, the session types of TLLC allow protocols to specify properties of communicated…

Programming Languages · Computer Science 2025-10-27 Qiancheng Fu , Hongwei Xi , Ankush Das

Go is a production-level statically typed programming language whose design features explicit message-passing primitives and lightweight threads, enabling (and encouraging) programmers to develop concurrent systems where components interact…

Programming Languages · Computer Science 2017-03-01 Julien Lange , Nicholas Ng , Bernardo Toninho , Nobuko Yoshida

Static type errors are a common stumbling block for newcomers to typed functional languages. We present a dynamic approach to explaining type errors by generating counterexample witness inputs that illustrate how an ill-typed program goes…

Programming Languages · Computer Science 2018-03-20 Eric L Seidel , Ranjit Jhala , Westley Weimer

**Context:** The design of static type systems that can validate dynamically-typed programs (**gradually**) is an ongoing challenge. A key difficulty is that dynamic code rarely follows datatype-driven design. Programs instead use runtime…

Programming Languages · Computer Science 2025-08-07 Hanwen Guo , Ben Greenman

Object-oriented programs tend to be written using many common coding idioms, such as those captured by design patterns. While design patterns are useful, implementing them is often tedious and repetitive, requiring boilerplate code that…

Programming Languages · Computer Science 2026-02-20 Jasper Geer , Fox Huston , Jeffrey S. Foster

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

Because of the importance of object oriented methodologies, the research in developing new measure for object oriented system development is getting increased focus. The most of the metrics need to find the interactions between the objects…

Software Engineering · Computer Science 2010-08-11 K. M. Azharul Hasan , Mohammad Sabbir Hasan

Because of the importance of object oriented methodologies, the research in developing new measure for object oriented system development is getting increased focus. The most of the metrics need to find the interactions between the objects…

Software Engineering · Computer Science 2010-07-15 K. M. Azharul Hasan , Mohammad Sabbir Hasan

A key part of implementing high-level languages is providing built-in and default data structures. Yet selecting good defaults is hard. A mutable data structure's workload is not known in advance, and it may shift over its lifetime - e.g.,…

Programming Languages · Computer Science 2017-08-09 Chao-Hong Chen , Vikraman Choudhury , Ryan R. Newton

We propose a timed and soft extension of Concurrent Constraint Programming. The time extension is based on the hypothesis of bounded asynchrony: the computation takes a bounded period of time and is measured by a discrete global clock.…

Programming Languages · Computer Science 2015-10-07 Stefano Bistarelli , Maurizio Gabbrielli , Maria Chiara Meo , Francesco Santini

We present Dependent JavaScript (DJS), a statically-typed dialect of the imperative, object-oriented, dynamic language. DJS supports the particularly challenging features such as run-time type-tests, higher-order functions, extensible…

Programming Languages · Computer Science 2012-08-02 Ravi Chugh , David Herman , Ranjit Jhala