Papers

AOSD 09: Dependent Advice: A General Approach to Optimizing History-based Aspects

FSE 08: Finding Programming Errors Earlier by Evaluating Runtime Monitors Ahead-of-Time

ISSTA 08: Racer: Effective Race Detection Using AspectJ

AOSD 2008: Modularity First: A Case for Mixing AOP and Attribute Grammars

AOSD 2008: Relational Aspects as Tracematches

OOPSLA 2007: Making Trace Monitors Feasible

RV 2007: Collaborative runtime verification with tracematches

ECOOP 2007: A staged static program analysis to improve the performance of runtime monitoring

FATES/RV 2006: Aspects for Trace Monitoring

AOSD 2006: Adding Open Modules to AspectJ

TAOSD 2005: abc: An extensible AspectJ compiler

OOPSLA 2005: Adding Trace Matching with Free Variables to AspectJ

PLDI 2005: Optimising AspectJ.

AOSD 2005: abc: An extensible AspectJ compiler.

OOPSLA 2004: Measuring the Dynamic Behaviour of AspectJ Programs.

Theses

Elcin Recebli, Pure Aspects, MSc thesis, Oxford University, September 2005.

Neil Ongkingco, An Implementation of Open Modules in AspectJ. MSc thesis, Oxford University, September 2005.

Sascha Kuzins, Efficient Implementation of Around-advice for the AspectBench Compiler. MSc thesis, Oxford University, September 2004.

Technical Reports

abc-2008-2: Dependent advice: A general approach to optimizing history-based aspects (extended version)

abc-2008-1: Racer: Effective Race Detection Using AspectJ (extended version)

abc-2007-6: Static Analysis Techniques for Evaluating Runtime Monitoring Properties Ahead-of-Time

abc-2007-5: Static Aspect Impact Analysis

abc-2007-4: Relational Aspects as Tracematches

abc-2007-3: Flow-sensitive static optimizations for runtime monitors

abc-2007-2: A staged static program analysis to improve the performance of runtime monitoring (extended version)

abc-2007-1: Making Trace Monitoring Feasible

abc-2006-4: A staged static program analysis to improve the performance of runtime monitoring

abc-2006-3: Semantics of Static Pointcuts in AspectJ

abc-2006-2: Datalog Semantics of Static Pointcuts in AspectJ 1.2.1

abc-2006-1: Efficient Trace Monitoring

abc-2005-2: Adding Open Modules to AspectJ

abc-2005-1: Adding trace matching to AspectJ.

abc-2004-4: Building the abc AspectJ compiler with Polyglot and Soot.

abc-2004-3: Optimising AspectJ.

abc-2004-2: Building the abc AspectJ compiler with Polyglot and Soot. (Obsolete version, revised as abc-2004-4.)

abc-2004-1: An extensible AspectJ compiler.

Talks

Eric Bodden. A staged static program analysis to improve the performance of runtime monitoring. (ECOOP 2007, August 2007)

Eric Bodden. Collaborative runtime verification with tracematches. (RV 2007, March 2007)

Neil Ongkingco. Adding Open Modules to AspectJ. (AOSD 2006, March 2006)

Eric Bodden. Efficient temporal pointcuts through dynamic advice deployment. (ODAL 2005, March 2005)

The abc team, talk by Damien Sereni. Adding Trace Matching with Free Variables to AspectJ (GPCE 2005, September 2005)

Oege de Moor. abc: the AspectBench Compiler for AspectJ (GPCE 2005, September 2005)

Oege de Moor. abc: an extensible AspectJ Compiler (AOSD 2005, March 2005)

The abc team. abc: a workbench for aspect-oriented programming language and compiler research. (Tutorial at AOSD 2005, March 2005)

Oege de Moor. Optimising AspectJ. (Cambridge Computer Lab, December 2004)

Laurie Hendren. abc: the AspectBench Compiler for AspectJ. (CASCON 2004, September 2004)

The abc team. abc: An extensible AspectJ compiler. (ajc development team, IBM Hursley, September 2004)

Oege de Moor. abc: An implementation of AspectJ. (C# design team, Microsoft Redmond, July 2004)

Oege de Moor. abc: Programming language research and aspect-oriented programming. (WAOP, July 2004)

Publications that make use of abc

A comprehensive list can be found here; please let us know of any omissions!