...and there's some really interesting stuff there. I'm sure that this
document is going to suffer a lot of reviewing, changing, and improving
by the Alliance folks, and while I'm catching up with the conversations
on the mailing lists (guess I have a reason to learn AspectJ now... :),
I found this paper very good as a mission statement for the Alliance,
and I think their (should I say "our"?) goals are pretty much possible,
if the tool providers are willing (and they are) to implement and
contribute to the specification of the common APIs for every part of
the system.
It's going to be awesome to change the underlying implementations of
some parts of an AOE (Aspect-Oriented Environment) to best match our
current needs, without much need to change the code of your application
per se. I can't wait to be able to change from BCEL to Javassist, from
JMangler to beeSee, from whatever to whatever else is compatible with a
given part of the spec just by fiddling with some environment
configuration. I wouldn't say this is a need, right now, as AspectWerkz
+ JMangler + BCEL is serving me quite well, but vendor independence is
one of the reasons I chose Java in the first place, and the Alliance is
trying to bring this to the AOP world. Awesome, just awesome :)