A theory of distributed aspects - Archive ouverte HAL Accéder directement au contenu
Pré-Publication, Document De Travail Année : 2009

A theory of distributed aspects

Nicolas Tabareau

Résumé

Over the last five years, several systems have been proposed to take distribution into account in Aspect-Oriented Programming. While they appeared to be fruitful to develop or improve distributed component infrastructures or application servers, those systems are not underpinned with a formal semantics and so do not permit to establish properties on the code to be executed. This paper introduces the aspect join calculus -- an aspect-oriented and distributed language based on the join calculus, a member of the pi-calculus family of process calculi suitable as a programming language. It provides a first formal theory of distributed AOP as well as a base language in which many features of previous distributed AOP systems can be formalized. The semantics of the aspect join calculus is given by a (chemical) operational semantics and a type system is developed to ensure properties satisfied by aspects during the execution of a process. We also give a translation of the aspect join calculus into the core join calculus. The translation is proved to be correct by a bisimilarity argument. In this way, we provide a well-defined version of a weaving algorithm which constitutes the main step towards an implementation of the aspect join calculus directly in JoCaml. We conclude this paper by showing that despite its minimal definition, the aspect join calculus is a convenient language in which existing distributed AOP languages can be formalized. Indeed, many features (such as remote pointcut, distributed advice, migration of aspects, asynchronous and synchronous aspects, re-routing of messages and distributed control flow) can be defined in this simple language.
Fichier principal
Vignette du fichier
theory_of_distributed_aspects_fullversion.pdf (296.89 Ko) Télécharger le fichier
Origine : Fichiers produits par l'(les) auteur(s)

Dates et versions

inria-00423996 , version 1 (13-10-2009)
inria-00423996 , version 2 (16-10-2009)
inria-00423996 , version 3 (19-01-2010)
inria-00423996 , version 4 (16-03-2010)

Identifiants

  • HAL Id : inria-00423996 , version 3

Citer

Nicolas Tabareau. A theory of distributed aspects. 2009. ⟨inria-00423996v3⟩

Collections

INFO
296 Consultations
398 Téléchargements

Partager

Gmail Facebook X LinkedIn More