English
Related papers

Related papers: Step in Tine: Forking Processes in Functional Chor…

200 papers

Since the advent of LISP, the fifth generation programming language has developed for decades. However, compared with the fourth generation programming language, the fifth generation programming language has not been widely used because of…

Programming Languages · Computer Science 2022-06-03 Han Jipeng , Lichen Zhihang

Coordination protocols help programmers of distributed systems reason about the effects of transactions on the state of the system, but they're not cheap. Coordination protocols may involve multiple rounds of communication, which can hurt…

Distributed, Parallel, and Cluster Computing · Computer Science 2021-09-21 Rolando Garcia , Giulia Guidi

Parallel batched data structures are designed to process synchronized batches of operations in a parallel computing model. In this paper, we propose parallel combining, a technique that implements a concurrent data structure from a parallel…

Distributed, Parallel, and Cluster Computing · Computer Science 2018-11-14 Vitaly Aksenov , Petr Kuznetsov , Anatoly Shalyto

Deadlocks occur in concurrent programs as a consequence of cyclic resource acquisition between threads. In this paper we present a novel type system that guarantees deadlock freedom for a language with references, unstructured locking…

Programming Languages · Computer Science 2011-10-20 Prodromos Gerakios , Nikolaos Papaspyrou , Konstantinos Sagonas

We define a method to automatically synthesize provably-correct efficient distributed implementations from high-level global choreographies. A global choreography describes the execution and communication logic between a set of provided…

Distributed, Parallel, and Cluster Computing · Computer Science 2019-06-03 Mohamad Jaber , Yliès Falcone , Paul Attie , Al-Abbass Khalil , Rayan Hallal

Rapid technological progress in computer sciences finds solutions and at the same time creates ever more complex requirements. Due to an evolving complexity todays programming languages provide powerful frameworks which offer standard…

Human-Computer Interaction · Computer Science 2019-05-17 Igor Ivkic , Alexander Wöhrer , Markus Tauber

Compiler optimization decisions are often based on hand-crafted heuristics centered around a few established benchmark suites. Alternatively, they can be learned from feature and performance data produced during compilation. However,…

Programming Languages · Computer Science 2022-06-29 Raphael Mosaner , David Leopoldseder , Wolfgang Kisling , Lukas Stadler , Hanspeter Mössenböck

We present a programming model and typing discipline for complex multi-robot coordination programming. Our model encompasses both synchronisation through message passing and continuous-time dynamic motion primitives in physical space. We…

Robotics · Computer Science 2020-10-13 Rupak Majumdar , Nobuko Yoshida , Damien Zufferey

Asynchronous programming is widely adopted for building responsive and efficient software, and modern languages such as C# provide async/await primitives to simplify the use of asynchrony. In this paper, we propose an approach for…

Programming Languages · Computer Science 2022-09-15 Sidi Mohamed Beillahi , Ahmed Bouajjani , Constantin Enea , Shuvendu Lahiri

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

The recent advancements in multicore machines highlight the need to simplify concurrent programming in order to leverage their computational power. One way to achieve this is by designing efficient concurrent data structures (e.g. stacks,…

Distributed, Parallel, and Cluster Computing · Computer Science 2021-03-31 Nikolaos D. Kallimanis

We address the problem of statically checking control state reachability (as in possibility of assertion violations, race conditions or runtime errors) and plain reachability (as in deadlock-freedom) of phaser programs. Phasers are a modern…

Programming Languages · Computer Science 2017-08-10 Zeinab Ganjei , Ahmed Rezine , Petru Eles , Zebo Peng

This thesis embarks on a comprehensive exploration of formal computational models that underlie typed programming languages. We focus on programming calculi, both functional (sequential) and concurrent, as they provide a compelling rigorous…

Logic in Computer Science · Computer Science 2024-08-16 Joseph William Neal Paulus

In this work we present work in progress on functionality duplication detection in logic programs. Eliminating duplicated functionality recently became prominent in context of refactoring. We describe a quantitative approach that allows to…

Programming Languages · Computer Science 2007-05-23 Alexander Serebrenik , Wim Vanhoof

The scheduling of task graphs with communication delays has been extensively studied. Recently, new results for the common sub-case of fork-join shaped task graphs were published, including an EPTAS and polynomial algorithms for special…

Distributed, Parallel, and Cluster Computing · Computer Science 2023-06-06 Huijun Wang , Oliver Sinnen

The current push towards interoperability drives companies to collaborate through process choreographies. At the same time, they face a jungle of continuously changing regulations, e.g., due to the pandemic and developments such as the…

Logic in Computer Science · Computer Science 2021-12-20 Walid Fdhila , David Knuplesch , Stefanie Rinderle-Ma , Manfred Reichert

Parallel programming remains a daunting challenge, from the struggle to express a parallel algorithm without cluttering the underlying synchronous logic, to describing which devices to employ in a calculation, to correctness. Over the…

Distributed, Parallel, and Cluster Computing · Computer Science 2023-08-10 Patrick Diehl , Steven R. Brandt , Hartmut Kaiser

Threads and events are two common abstractions for writing concurrent programs. Because threads are often more convenient, but events more efficient, it is natural to want to translate the former into the latter. However, whereas there are…

Programming Languages · Computer Science 2012-10-18 Matthieu Boutier , Gabriel Kerneis

We explore asynchronous programming with algebraic effects. We complement their conventional synchronous treatment by showing how to naturally also accommodate asynchrony within them, namely, by decoupling the execution of operation calls…

Programming Languages · Computer Science 2020-11-17 Danel Ahman , Matija Pretnar

In the trend towards tolerating hardware unreliability, accuracy is exchanged for cost savings. Running on less reliable machines, "functionally correct" code becomes risky and one needs to know how risk propagates so as to mitigate it.…

Logic in Computer Science · Computer Science 2013-11-18 Daniel Murta , Jose Nuno Oliveira