[aosd-discuss] AOP languages mature enough to used in industry
Dean Wampler
dean at aspectprogramming.com
Fri May 18 08:23:56 EDT 2007
Unless I'm mistaken, Spring supports the AspectJ pointcut language
for specifying where to apply advice/proxies as well as its original
syntax that is more like "apply an advice-like proxy to this single
class".
My real point about the pointcut language (excuse the pun... ;) is
that a strong pointcut language is essential for AOP because we need
the ability the specify a complex collection of join points,
including various static and dynamic conditional constructs, in order
to have a truly modular system. That is, if AOP allows me to
modularize a concern, I need the ability to specify this in a very
succinct way in a single module. Apply advice is the easy part, even
in java, where there are plenty of good byte-code manipulation
libraries.
Of course, this is the low-level stuff. We also need good constructs
for modular specification of concerns at higher levels of abstraction.
I hope I understood your point.
dean
On May 18, 2007, at 4:04 AM, Michael Haupt wrote:
> Hi Dean,
>
> Am 17.05.2007 um 03:59 schrieb Dean Wampler:
>> I've been doing a lot of experimenting with aspects in Ruby lately.
>> Implementing advice and introductions for individual classes and
>> "modules" (like "mixins") are trivial to do in Ruby. It's a bit more
>> involved to advising groups of classes and modules in one place. In
>> fact, what everyone overlooks is that the most important feature of
>> any AOP framework is really the pointcut language.
>
> but that is only true for PA-flavoured AOP languages, isn't it?
>
> Spring AOP worked very well without an explicit pointcut language.
> Advice simply applied where proxies would implement the same
> methods as client classes.
>
>> It's hard to write
>> a sophisticated pointcut language in Ruby, like most non-AOP
>> languages, although Ruby has excellent facilities that help.
>
> Do you really, really need one?
>
> Best,
>
> Michael
>
> --
> Dr.-Ing. Michael Haupt michael.haupt at hpi.uni-potsdam.de
> Software Architecture Group Phone: ++49 (0) 331-5509-542
> Hasso Plattner Institute for Fax: ++49 (0) 331-5509-229
> Software Systems Engineering http://www.swa.hpi.uni-
> potsdam.de/
> Prof.-Dr.-Helmert-Str. 2-3, D-14482 Potsdam, Germany
>
> Hasso-Plattner-Institut für Softwaresystemtechnik GmbH, Potsdam
> Amtsgericht Potsdam, HRB 12184
> Geschäftsführung: Prof. Dr. Christoph Meinel
>
>
Dean Wampler, Ph.D.
dean at objectmentor.com
http://www.objectmentor.com
http://www.aspectprogramming.com
http://www.contract4j.org
I want my tombstone to say:
Unknown Application Error in Dean Wampler.exe.
Application Terminated.
[Okay] [Cancel]
More information about the discuss
mailing list