Differences
This shows you the differences between two versions of the page.
Next revision | Previous revision | ||
research:software:effectiveaspects [2013/06/14 16:28] – created ifiguero | research:software:effectiveaspects [2014/03/03 16:08] (current) – ifiguero | ||
---|---|---|---|
Line 1: | Line 1: | ||
- | a | + | ====== Effective Aspects: A Typed Monadic Embedding of Pointcuts and Advice ====== |
+ | This is the main page for our research on pointcut/ | ||
+ | |||
+ | ** See our follow-up work: [[http:// | ||
+ | |||
+ | ====== Code for our Transactions on Aspect-Oriented Software Development Submission ====== | ||
+ | |||
+ | **Thesis Reviewers: this source code also corresponds to the manuscript** | ||
+ | |||
+ | The code for our TAOSD submission can be downloaded {{research: | ||
+ | |||
+ | ====== A Typed Monadic Embedding of Aspects (AOSD 2013) ====== | ||
+ | |||
+ | We developed a novel approach to embed pointcut/ | ||
+ | |||
+ | ====== Source Code ====== | ||
+ | |||
+ | ===== Original code from AOSD 2013 ===== | ||
+ | The original source of the AOSD 2013 paper can be downloaded {{: | ||
+ | |||
+ | ===== Taming Aspects with Monads and Membranes (FOAL 2013) ===== | ||
+ | The source of our FOAL 2013 submission can be downloaded {{: | ||
+ | |||
+ | ====== About the Code ====== | ||
+ | |||
+ | We tested the software in the [[http:// | ||
+ | |||
+ | The code depends on the following packages: | ||
+ | * random | ||
+ | * mtl | ||
+ | * HUnit | ||
+ | * QuickCheck | ||
+ | * containers | ||
+ | * haskell-src-meta | ||
+ | * template-haskell | ||
+ | * polytypeable | ||
+ | * ghc-prim | ||
+ | * fgl (functional graph library, for the membrane semantics) | ||
+ | |||
+ | Which can be installed using the [[http:// | ||
+ | |||
+ | We include the paper examples, and tests used during development. The main difference between the code in the paper and the source code are: | ||
+ | |||
+ | * deployment/ | ||
+ | |||
+ | * In file Function.hs we define tagged functions to provide a more robust notion of function equality. Join points, open function application, |