In this paper, we review what we have learned from implementing languages for parallel and concurrent programming, and investigate the role of modularity. To identify the approaches used to facilitate correctness and maintainability, we ask the following questions: What guides modularization? Are informal approaches used to facilitate correctness? Are concurrency concerns modularized? And, where is language support lacking most? Our subjects are AmbientTalk, SLIP, and the RoarVM. All three evolved over the years, enabling us to look back at specific experiments to understand the impact of concurrency on modularity. We conclude from our review that concurrency concerns are one of the strongest drivers for the definition of module boundaries....
The specification of a concurrent program module is a difficult problem. The specifications must be ...
We propose to search for common abstractions for concurrency models to enable multi-language virtual...
A description is given of language constructs for specifying concurrency in CDL*. The main goals in ...
In this paper, we review what we have learned from imple-menting languages for parallel and concurre...
Supporting all known abstractions for concurrent and parallel programming in a virtual machines (VM)...
Compared to coarse-grained external synchronization of operations on data structures shared between ...
Implementing synchronization and communication among tasks in parallel programs is a major challenge...
While parallel programming for very regular problems has been used in the scientific community by no...
Proving correctness of distributed or concurrent algorithms is a mind-challenging and complex proces...
Compilers are traditionally factorised into a number of separate phases, such as parsing, type check...
During the past decade, software developers widely adopted JVM and CLI as multi-language virtual mac...
La programmation concurrente à mémoire partagée est un modèle classique de concurrence qui permet no...
We propose to search for common abstractions for different concurrency models to enable high-level l...
AbstractCHARM (for concurrency and hiding in an abstract rewriting machine) is an abstract machine w...
Compared to coarse-grained external synchronization of operations on data structures shared between ...
The specification of a concurrent program module is a difficult problem. The specifications must be ...
We propose to search for common abstractions for concurrency models to enable multi-language virtual...
A description is given of language constructs for specifying concurrency in CDL*. The main goals in ...
In this paper, we review what we have learned from imple-menting languages for parallel and concurre...
Supporting all known abstractions for concurrent and parallel programming in a virtual machines (VM)...
Compared to coarse-grained external synchronization of operations on data structures shared between ...
Implementing synchronization and communication among tasks in parallel programs is a major challenge...
While parallel programming for very regular problems has been used in the scientific community by no...
Proving correctness of distributed or concurrent algorithms is a mind-challenging and complex proces...
Compilers are traditionally factorised into a number of separate phases, such as parsing, type check...
During the past decade, software developers widely adopted JVM and CLI as multi-language virtual mac...
La programmation concurrente à mémoire partagée est un modèle classique de concurrence qui permet no...
We propose to search for common abstractions for different concurrency models to enable high-level l...
AbstractCHARM (for concurrency and hiding in an abstract rewriting machine) is an abstract machine w...
Compared to coarse-grained external synchronization of operations on data structures shared between ...
The specification of a concurrent program module is a difficult problem. The specifications must be ...
We propose to search for common abstractions for concurrency models to enable multi-language virtual...
A description is given of language constructs for specifying concurrency in CDL*. The main goals in ...