Artículos de revistas
Chemical foundations of distributed aspects
Date
2019Registration in:
Distributed Computing, Volumen 32, Issue 3, 2019, Pages 193-216
01782770
10.1007/s00446-018-0334-6
Author
Tabareau, Nicolás
Tanter, Éric
Institutions
Abstract
© 2018, Springer-Verlag GmbH Germany, part of Springer Nature. Distributed applications are challenging to program because they have to deal with a plethora of concerns, including synchronization, locality, replication, security and fault tolerance. Aspect-oriented programming (AOP) is a paradigm that promotes better modularity by providing means to encapsulate crosscutting concerns in entities called aspects. Over the last years, a number of distributed aspect-oriented programming languages and systems have been proposed, illustrating the benefits of AOP in a distributed setting. Chemical calculi are particularly well-suited to formally specify the behavior of concurrent and distributed systems. The join calculus is a functional name-passing calculus, with both distributed and object-oriented extensions. It is used as the basis of concurrency and distribution features in several mainstream languages like C# (Polyphonic C#, now Cω), OCaml (JoCaml), and Scala Joins. Unsurprisingly, prac