Chemical foundations of distributed aspects

Guardado en:
書目詳細資料
發表在:Distributed Computing vol. 32, no. 3 (Jun 2019), p. 193
主要作者: Tabareau, Nicolas
其他作者: Tanter, Éric
出版:
Springer Nature B.V.
主題:
在線閱讀:Citation/Abstract
Full Text - PDF
標簽: 添加標簽
沒有標簽, 成為第一個標記此記錄!

MARC

LEADER 00000nab a2200000uu 4500
001 2051402304
003 UK-CbPIL
022 |a 0178-2770 
022 |a 1432-0452 
024 7 |a 10.1007/s00446-018-0334-6  |2 doi 
035 |a 2051402304 
045 2 |b d20190601  |b d20190630 
084 |a 65685  |2 nlm 
100 1 |a Tabareau, Nicolas  |u Inria, Nantes, France 
245 1 |a Chemical foundations of distributed aspects 
260 |b Springer Nature B.V.  |c Jun 2019 
513 |a Journal Article 
520 3 |a 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\[\omega \]), OCaml (JoCaml), and Scala Joins. Unsurprisingly, practical programming in the join calculus also suffers from modularity issues when dealing with crosscutting concerns. We propose the aspect join calculus, an aspect-oriented and distributed variant of the join calculus that addresses crosscutting and provides a formal foundation for distributed AOP. We develop a minimal aspect join calculus that allows aspects to advise chemical reactions. We show how to deal with causal relations in pointcuts and how to support advanced customizable aspect weaving semantics. We also provide the foundation for a decentralized distributed aspect weaving architecture. The semantics of the aspect join calculus is given by a chemical operational semantics. We give a translation of the aspect join calculus into the core join calculus, and prove this translation correct by a bisimilarity argument. This translation is used to implement Aspect JoCaml on top of JoCaml. 
653 |a Object oriented programming 
653 |a Modularity 
653 |a Calculus 
653 |a Weaving 
653 |a Semantics 
653 |a Organic chemistry 
653 |a Chemical reactions 
653 |a Applications programs 
653 |a Programming languages 
653 |a Fault tolerance 
653 |a Synchronism 
653 |a Concurrency 
653 |a Computer networks 
653 |a Computer programming 
700 1 |a Tanter, Éric  |u PLEIAD Lab, Computer Science Dept (DCC), University of Chile, Santiago, Chile 
773 0 |t Distributed Computing  |g vol. 32, no. 3 (Jun 2019), p. 193 
786 0 |d ProQuest  |t Advanced Technologies & Aerospace Database 
856 4 1 |3 Citation/Abstract  |u https://www.proquest.com/docview/2051402304/abstract/embedded/L8HZQI7Z43R0LA5T?source=fedsrch 
856 4 0 |3 Full Text - PDF  |u https://www.proquest.com/docview/2051402304/fulltextPDF/embedded/L8HZQI7Z43R0LA5T?source=fedsrch