Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
Next revisionBoth sides next revision
research:software:haskellaop [2013/01/03 17:40] ifigueroresearch:software:haskellaop [2013/02/04 14:41] – [Aspect-Oriented Programming in Haskell] ifiguero
Line 1: Line 1:
-====== A Typed Monadic Embedding of Aspects ======+====== Aspect-Oriented Programming in Haskell ======  
 +This is the main page for our research on aspect-oriented programming (AOP) in Haskell. We have developed the Haskell AOP library that provides the full pointcut/advice model of AOP into a monadic setting. Read below for further details. 
 + 
 + 
 +====== A Typed Monadic Embedding of Aspects (AOSD 2013) ======
  
 We developed 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, and makes it possible to modularly extend or modify the aspect language. We developed 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, and makes it possible to modularly extend or modify the aspect language.
Line 8: Line 12:
 The original source of the AOSD 2013 paper can be downloaded {{:research:software:aop2.zip | here}}. See the included README file for details. The original source of the AOSD 2013 paper can be downloaded {{:research:software:aop2.zip | here}}. See the included README file for details.
  
-===== Taming Aspects with Monads and Membranes ===== +===== Taming Aspects with Monads and Membranes (FOAL 2013) ===== 
-The source of our FOAL 2013 submission can be downloaded here. This is an updated revision of the previous code with programmable membranes semantics for aspect-oriented programming. See the included README and README-FOAL file for details.+The source of our FOAL 2013 submission can be downloaded {{:research:software:aomonad-foal13.zip | here}}. This is an updated revision of the previous code with programmable membranes semantics for aspect-oriented programming. See the included README and README-FOAL file for details.
  
 ====== About the Code ====== ====== About the Code ======