Publications

Stats

View publication

Title Taming Aspects with Monads and Membranes
Authors Ismael Figueroa, Nicolas Tabareau, Éric Tanter
Publication date 2013
Abstract When a software system is developed using several aspects,
special care must be taken to ensure that the resulting behavior is correct.
This is known as the aspect interference problem, and existing approaches
essentially aim to detect whether a system exhibits problematic
interferences of aspects.
\n\n
In this paper we describe how to control aspect interference by construction
by relying on the type system. More precisely, we combine a monadic
embedding of the pointcut/advice model in Haskell with the notion of
membranes for aspect-oriented programming. Aspects must explicitly declare
the side effectsa nd the context they can act upon. Allowed patterns of
control flow interference are declared at the membrane level and statically
enforced. Finally, computational interference between aspects is controlled
by the membrane topology. To combine independent and reusable aspects and
monadic components into a program specification we use monad views, a recent
technique for conveniently handling the monadic stack.
Pages 1-6
Conference name Foundations of Aspect-Oriented Languages
Publisher ACM Press (New York, NY, USA)
Reference URL View reference page