Implementing Joins using Extensible Pattern Matching
Related publications (32)
Graph Chatbot
Chat with Graph Search
Ask any question about EPFL courses, lectures, exercises, research, news, etc. or try the example questions below.
DISCLAIMER: The Graph Chatbot is not programmed to provide explicit or categorical answers to your questions. Rather, it transforms your questions into API requests that are distributed across the various IT services officially administered by EPFL. Its purpose is solely to collect and recommend relevant references to content that you can explore to help you answer your questions.
Message-based communication offers potential benefits of providing stronger specification and cleaner separation between components. Compared with shared-memory interactions, message passing has the potential disadvantages of being more expensive (no direc ...
There is an impedance mismatch between message-passing concurrency and virtual machines, such as the JVM. VMs usually map their threads to heavyweight OS processes. Without a lightweight process abstraction, users are often forced to write parts of concurr ...
This paper addresses the question of the weakest failure detector for solving the Non-Blocking Atomic Commit problem (NBAC) in a message passing system where processes can fail by crashing. We define a failure detector, denoted by X, which we show to be su ...
In practice, concurrent programming systems based on message passing are often instantiations of the actor model. A popular implementation of this form of concurrency is the Erlang programming language. Erlang supports massively concurrent systems such as ...
Join patterns are an attractive declarative way to synchronize both threads and asynchronous distributed computations. We explore joins in the context of extensible pattern matching that recently appeared in languages such as F# and Scala. Our implementati ...
We study efficient and robust implementations of an atomic read-write data structure over an asynchronous distributed message-passing system made of reader and writer processes, as well as failure prone server processes implementing the data structure. We ...
The actor computation model is especially suited for concurrent and distributed computations. Actors are basically concurrent processes which communicate through asynchronous message passing. When combined with pattern matching for messages, actor-based pr ...
PiLib is a library written in Scala that implements the concurrency constructs of the Pi-calculus. Some features of the programming language Scala, examined in the paper, make it possible to use almost the same syntax as in the Pi-calculus. The advantages ...
Many envisioned applications of ad hoc networks involve only small-scale networks that we term Vicinity Ad-hoc Groups (VAGs). Distributed coordination services, instead of pairwise communications, are the primary requirements of VAGs. Existing designs for ...
his paper determines the computational strenght of the shared memory abstraction (a register) emulated over a message passing system, and compares it with fundamental message passing abstractions like consensus and various forms of reliable broadcast. We i ...