Skip to Main content Skip to Navigation
Preprints, Working Papers, ...

Aspect Oriented Programming: a language for 2-categories

Nicolas Tabareau 1, 2 
1 ASCOLA - Aspect and composition languages
LINA - Laboratoire d'Informatique de Nantes Atlantique, Département informatique - EMN, Inria Rennes – Bretagne Atlantique
Abstract : 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.
Keywords : Languages Theory design
Document type :
Preprints, Working Papers, ...
Complete list of metadata
Contributor : Nicolas Tabareau Connect in order to contact the contributor
Submitted on : Tuesday, April 6, 2010 - 2:34:14 PM
Last modification on : Tuesday, March 1, 2022 - 3:19:48 PM
Long-term archiving on: : Friday, October 19, 2012 - 11:20:26 AM


Files produced by the author(s)


  • HAL Id : inria-00470400, version 1



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



Record views


Files downloads