English
Related papers

Related papers: Functional Choreographic Programming

200 papers

Constraint Handling Rules is an effective concurrent declarative programming language and a versatile computational logic formalism. CHR programs consist of guarded reactive rules that transform multisets of constraints. One of the main…

Distributed, Parallel, and Cluster Computing · Computer Science 2018-04-09 Thom Fruehwirth

We propose the use of structured natural language (English) in specifying service choreographies, focusing on the what rather than the how of the required coordination of participant services in realising a business application scenario.…

Software Engineering · Computer Science 2015-12-25 Nurulhuda A. Manaf , Sotiris Moschoyiannis , Paul Krause

Large language model (LLM)-based evolution is a promising approach for open-ended discovery, where progress requires sustained search and knowledge accumulation. Existing methods still rely heavily on fixed heuristics and hard-coded…

Classical Processes (CP) is a calculus where the proof theory of classical linear logic types communicating processes with mobile channels, a la pi-calculus. Its construction builds on a recent propositions as types correspondence between…

Logic in Computer Science · Computer Science 2018-02-09 Fabrizio Montesi

The proposed framework provides a general model of concurrent imperative programming. Programs are modeled as formal languages and concurrency as an interleaving (or shuffle) operator. This yields a simple and elegant algebra of programs.…

Programming Languages · Computer Science 2012-09-11 Stephan van Staden

User defined recursive types are a fundamental feature of modern functional programming languages like Haskell, Clean, and the ML family of languages. Properties of programs defined by recursion on the structure of recursive types are…

Programming Languages · Computer Science 2013-12-11 James Caldwell

We present a novel framework for generating pop music. Our model is a hierarchical Recurrent Neural Network, where the layers and the structure of the hierarchy encode our prior knowledge about how pop music is composed. In particular, the…

Sound · Computer Science 2016-11-14 Hang Chu , Raquel Urtasun , Sanja Fidler

Concurrent data structures are the data sharing side of parallel programming. Data structures give the means to the program to store data, but also provide operations to the program to access and manipulate these data. These operations are…

Distributed, Parallel, and Cluster Computing · Computer Science 2013-02-13 Daniel Cederman , Anders Gidenstam , Phuong Ha , Håkan Sundell , Marina Papatriantafilou , Philippas Tsigas

Object-oriented programming (OOP) is aimed at describing the structure and behaviour of objects by hiding the mechanism of their representation and access in primitive references. In this article we describe an approach, called…

Programming Languages · Computer Science 2010-09-28 Alexandr Savinov

Object-oriented programming (OOP) is one of the most popular paradigms used for building software systems. However, despite its industrial and academic popularity, OOP is still missing a formal apparatus similar to \(\lambda\)-calculus,…

Programming Languages · Computer Science 2026-01-08 Yegor Bugayenko , Maxim Trunnikov

A collaboration framework is a distributed system that serves as the data layer for a collaborative app. Conflict-free Replicated Data Types (CRDTs) are a promising theoretical technique for implementing collaboration frameworks. However,…

Distributed, Parallel, and Cluster Computing · Computer Science 2023-10-17 Matthew Weidner , Huairui Qi , Maxime Kjaer , Ria Pradeep , Benito Geordie , Yicheng Zhang , Gregory Schare , Xuan Tang , Sicheng Xing , Heather Miller

The Dancing problem requires a swarm of $n$ autonomous mobile robots to form a sequence of patterns, aka perform a choreography. Existing work has proven that some crucial restrictions on choreographies and initial configurations (e.g., on…

Distributed, Parallel, and Cluster Computing · Computer Science 2025-08-22 Caterina Feletti , Paola Flocchini , Debasish Pattanayak , Giuseppe Prencipe , Nicola Santoro

Developing web applications requires dealing with their distributed nature and the natural asynchronicity of user input and network communication. For facilitating this, different researchers have explored the combination of a multi-tier…

Programming Languages · Computer Science 2020-02-17 Bob Reynders , Frank Piessens , Dominique Devriese

With a view towards models of quantum computation and/or the interpretation of linear logic, we define a functional language where all functions are linear operators by construction. A small step operational semantic (and hence an…

Quantum Physics · Physics 2017-08-29 Pablo Arrighi , Gilles Dowek

Choral singing, a widely practiced form of ensemble singing, lacks comprehensive datasets in the realm of Music Information Retrieval (MIR) research, due to challenges arising from the requirement to curate multitrack recordings. To address…

The runtime analysis of decentralised software requires instrumentation methods that are scalable, but also minimally invasive. This paper presents a new algorithm that instruments choreographed outline monitors. Our instrumentation…

Software Engineering · Computer Science 2021-04-20 Luca Aceto , Duncan Paul Attard , Adrian Francalanza , Anna Ingólfsdóttir

Array programming languages allow for concise and generic formulations of numerical algorithms, thereby providing a huge potential for program optimisation such as fusion, parallelisation, etc. One of the restrictions that these languages…

Programming Languages · Computer Science 2017-10-12 Artjoms Sinkarovs , Sven-Bodo Scholz

We present a linear functional calculus with both the safety guarantees expressible with linear types and the rich language of combinators and composition provided by functional programming. Unlike previous combinations of linear typing and…

Programming Languages · Computer Science 2017-03-17 J. Garrett Morris

This paper explores the integration of neural networks with logic programming, addressing the longstanding challenges of combining the generalization and learning capabilities of neural networks with the precision of symbolic logic.…

Artificial Intelligence · Computer Science 2023-11-08 Jipeng Han

An introductory formal languages course exposes advanced undergraduate and early graduate students to automata theory, grammars, constructive proofs, computability, and decidability. Programming students find these topics to be challenging…

Formal Languages and Automata Theory · Computer Science 2014-12-17 Marco T. Morazán , Rosario Antunez