Okay, how about this metaphor: As far as AspectJ is concerned, AOP = scriptable debugger + partial evaluator (a.k.a compiler) john "I've got this cool new abstraction mechanism.... it's called 'self-modifying code'..." clements