Open Access
A typed monadic embedding of aspects
Hal (le Centre Pour La Communication Scientifique Directe)Nicolas Tabareau +22013Conference proceedings
We describe a novel approach to embed pointcut/advice aspects in a typed functional programming language like Haskell. Aspects are first-class, can be deployed dynamically, and the pointcut language is extensible. Type soundness is guaranteed by exploiting the underlying type system, in particular phantom types and a new anti-unification type class. The use of monads brings type-based reasoning about effects for the first time in the pointcut/advice setting, thereby practically combining Open Modules and EffectiveAdvice, and enables modular extensions of the aspect language.

The content you want is available to Zendy users.

Already have an account? Sign in
Having issues? Contact support