Aspect Oriented Programming: a language for 2-categories - Inria - Institut national de recherche en sciences et technologies du numérique
Pré-Publication, Document De Travail Année : 2010

Aspect Oriented Programming: a language for 2-categories

Résumé

Aspect Oriented Programming (AOP) started ten years ago with the remark that modularization of so-called crosscutting functionalities is a fundamental problem for the engineering of large-scale applications. Originating at Xerox PARC, this observation has sparked the development of a new style of programming featured. However, AOP lacks theoretical foundations to clarify this new idea. % This paper proposes to put a bridge between AOP (and more generally program transformation) and the notion of 2-category to enhance the conceptual understanding of AOP. Starting from the connection between the lambda-calculus and the theory of categories, we propose to see an aspect as a morphism between morphisms -- that is as a program that transforms the execution of a program. To make this connection precise, we develop an internal language for 2-categories and show how it can be used as a base for the definition of the weaving mechanism of a realistic functional AOP language, called MinAML. Finally, we advocate for a formalization of more complex AOP languages (eg. with references or exceptions) using the notion of enriched Lawvere theories.

Mots clés

Fichier principal
Vignette du fichier
aspect_2_category_icfp.pdf (264.68 Ko) Télécharger le fichier
Origine Fichiers produits par l'(les) auteur(s)

Dates et versions

inria-00470400 , version 1 (06-04-2010)
inria-00470400 , version 2 (03-02-2011)
inria-00470400 , version 3 (08-02-2011)

Identifiants

  • HAL Id : inria-00470400 , version 1

Citer

Nicolas Tabareau. Aspect Oriented Programming: a language for 2-categories. 2010. ⟨inria-00470400v1⟩

Collections

INFO
699 Consultations
284 Téléchargements

Partager

More