English
Related papers

Related papers: Functional Choreographic Programming

200 papers

Music and dance have always co-existed as pillars of human activities, contributing immensely to the cultural, social, and entertainment functions in virtually all societies. Notwithstanding the gradual systematization of music and dance…

Sound · Computer Science 2022-02-01 Shuang Wu , Zhenguang Li , Shijian Lu , Li Cheng

The Functional Machine Calculus (Heijltjes 2022) is a new approach to unifying the imperative and functional programming paradigms. It extends the lambda-calculus, preserving the key features of confluent reduction and typed termination, to…

Programming Languages · Computer Science 2026-03-03 Willem Heijltjes

The structures for the expression of fault-tolerance provisions into the application software are the central topic of this dissertation. Structuring techniques provide means to control complexity, the latter being a relevant factor for the…

Distributed, Parallel, and Cluster Computing · Computer Science 2016-11-08 Vincenzo De Florio

While transistor density is still increasing, clock speeds are not, motivating the search for new parallel architectures. One approach is to completely abandon the concept of CPU -- and thus serial imperative programming -- and instead to…

Distributed, Parallel, and Cluster Computing · Computer Science 2026-02-24 Harry Fitchett , Charles Fox

Theory of choreographic languages typically includes a number of complex results that are proved by structural induction. The high number of cases and the subtle details in some of them lead to long reviewing processes, and occasionally to…

Logic in Computer Science · Computer Science 2021-02-05 Luís Cruz-Filipe , Fabrizio Montesi , Marco Peressotti

Swarm protocols are a recently introduced formalism for specifying, implementing, and verifying peer-to-peer systems called swarms. A swarm consists of distributed agents called machines that communicate by asynchronous event propagation.…

Distributed, Parallel, and Cluster Computing · Computer Science 2026-04-20 Florian Furbach , Lucas Clorius , Roland Kuhn , Hernán Melgratti , Alceste Scalas , Emilio Tuosto

Backpropagation is a classic automatic differentiation algorithm computing the gradient of functions specified by a certain class of simple, first-order programs, called computational graphs. It is a fundamental tool in several fields, most…

Logic in Computer Science · Computer Science 2019-11-07 Alois Brunel , Damiano Mazza , Michele Pagani

Cryptography is a theory of secret functions. Category theory is a general theory of functions. Cryptography has reached a stage where its structures often take several pages to define, and its formulas sometimes run from page to page.…

Cryptography and Security · Computer Science 2023-11-03 Dusko Pavlovic

It has been argued that computational thinking should precede computer programming in the course of a career in computing. This argument is the basis for the slogan "logic first, syntax later" and the development of many cryptic syntax…

Computers and Society · Computer Science 2018-11-13 Patrick Vanvorce , Hasan M. Jamil

This paper is about a new way for programming distributed applications: the service-oriented one. It is a concept paper based upon our experience in developing a theory and a language for programming services. Both the theoretical…

Programming Languages · Computer Science 2009-06-23 Claudio Guidi , Fabrizio Montesi

A logic program is an executable specification. For example, merge sort in pure Prolog is a logical formula, yet shows creditable performance on long linked lists. But such executable specifications are a compromise: the logic is distorted…

Programming Languages · Computer Science 2015-09-29 M. H. van Emden

Algorithmicists are well-aware that fast dynamic programming algorithms are very often the correct choice when computing on compositional (or even recursive) graphs. Here we initiate the study of how to generalize this folklore intuition to…

Computational Complexity · Computer Science 2023-10-05 Ernst Althaus , Benjamin Merlin Bumpus , James Fairbanks , Daniel Rosiak

The objective of this paper is to develop a functional programming language for quantum computers. We develop a lambda calculus for the classical control model, following the first author's work on quantum flow-charts. We define a…

Logic in Computer Science · Computer Science 2009-02-26 Peter Selinger , Benoit Valiron

This paper is a concise and painless introduction to the $\lambda$-calculus. This formalism was developed by Alonzo Church as a tool for studying the mathematical properties of effectively computable functions. The formalism became popular…

Logic in Computer Science · Computer Science 2015-04-01 Raul Rojas

A visual programming language uses pictorial tools such as diagrams to represent its structural units and control stream. It is useful for enhancing understanding, maintenance, verification, testing, and parallelism. This paper proposes a…

Programming Languages · Computer Science 2013-04-23 Sabah Al-Fedaghi

We present efficient and practical algorithms for a large, distributed system of processors to achieve reliable computations in a secure manner. Specifically, we address the problem of computing a general function of several private inputs…

Cryptography and Security · Computer Science 2021-01-29 Donald Rozinak Beaver

We study the relations between a contract automata and an interaction model. In the former model, distributed services are abstracted away as automata - oblivious of their partners - that coordinate with each other through an orchestrator.…

Formal Languages and Automata Theory · Computer Science 2014-10-29 Davide Basile , Pierpaolo Degano , Gian-Luigi Ferrari , Emilio Tuosto

There are billions of lines of sequential code inside nowadays' software which do not benefit from the parallelism available in modern multicore architectures. Automatically parallelizing sequential code, to promote an efficient use of the…

Programming Languages · Computer Science 2016-04-13 Alcides Fonseca , Bruno Cabral , João Rafael , Ivo Correia

We introduce an object-oriented framework for parallel programming, which is based on the observation that programming objects can be naturally interpreted as processes. A parallel program consists of a collection of persistent processes…

Programming Languages · Computer Science 2014-04-21 Edward Givelberg

Dynamic objects in our physical 4D (3D + time) world are constantly evolving, deforming, and interacting with other objects, leading to diverse 4D scene dynamics. In this paper, we present a universal generative pipeline, CHORD, for…

Computer Vision and Pattern Recognition · Computer Science 2026-01-08 Yanzhe Lyu , Chen Geng , Karthik Dharmarajan , Yunzhi Zhang , Hadi Alzayer , Shangzhe Wu , Jiajun Wu