Lambda the Ultimate

inactiveTopic Aspect-oriented programming for Python
started 1/20/2002; 8:17:03 AM - last post 1/22/2002; 8:11:03 AM
Ehud Lamm - Aspect-oriented programming for Python  blueArrow
1/20/2002; 8:17:03 AM (reads: 3991, responses: 7)
Aspect-oriented programming for Python
(via Daily Python-URL)

TransWarp is a general purpose Aspect-Oriented Programming, Generative Programming, and CASE toolkit for Python.

We haven't mentioned AOP is a long time. Maybe a Python implementation will remind people of AOP, an interesting idea that didn't really catch on in the real world.

Posted to Python by Ehud Lamm on 1/20/02; 8:17:30 AM

Dan Moniz - Re: Aspect-oriented programming for Python  blueArrow
1/21/2002; 7:20:24 AM (reads: 2451, responses: 2)
Aspect-Oriented Programming has already not caught on? I mean, the statute of limitations is already up? What a shame.

Personally, I think AOP is getting more and more eyes and ears. Certainly a lot more than when I first started getting into it about two years back, and certainly a lot more than when I was getting into the predecessor of AOP, Open Implementation (as seen Kiczale's, et al. MOP work).

There's this tookit for Python, there's AspectR for Ruby, AspectJ for Java (which has been around for a while), and more people are discovering aspects (as far as I can tell) than ever before. My own work on CLAS (a Common Lisp Aspect System) trundles along, albeit ever so slowly (due to things like "real work" and "life", etc.).

I think you may be burying AOP (and related efforts, like IBM's SOP work, Microsoft's Intentional Programming, etc.) alive. Let's see what happens.

Ehud Lamm - Re: Aspect-oriented programming for Python  blueArrow
1/21/2002; 7:24:30 AM (reads: 2507, responses: 1)
I wasn't really giving my opinion of AOP. I just felt like it doesn't get the attention it deserves. I am happy to learn this is not the case.

I am not sure AOP as such is something I'd use. I think AOP has some great ideas, still looking for the right linguistic implementation.

Tell us more about CLAS!

Ehud Lamm - Re: Aspect-oriented programming for Python  blueArrow
1/21/2002; 11:39:08 AM (reads: 2427, responses: 0)
Composition filters seem like an interesting approach.

Adewale Oshineye - Re: Aspect-oriented programming for Python  blueArrow
1/22/2002; 1:31:12 AM (reads: 2420, responses: 1)
Take a look at this recent JavaWorld article [].

More evidence that AOP is sneaking into the mainstream. Given another 5-10 years it'll be as common as OOP.

Ehud Lamm - Re: Aspect-oriented programming for Python  blueArrow
1/22/2002; 1:59:06 AM (reads: 2470, responses: 0)
That's assuming OOP will still be common. Or is "as common as OOP is today"?

Dan Moniz - Re: Aspect-oriented programming for Python  blueArrow
1/22/2002; 6:57:20 AM (reads: 2537, responses: 0)
Well, there's not a whole lot to tell about CLAS at the moment. I hack on it when I have the motivation and time, which means much less often than I'd like. In brief, it's an extension of sorts of the MOP and CLOS using macros to provide an aspect system similar to the one Kiczales et al. developed in-house at Xerox (their system was named RG).

None of the code is available yet, I'm nowhere near ready to release any of it, it's much too incomplete. This happens to be the mode with most of my projects, unfortunately.

Chris Rathman - Re: Aspect-oriented programming for Python  blueArrow
1/22/2002; 8:11:03 AM (reads: 2408, responses: 0)
Out of curiosity, what do Aspects have over the multi-method capability of CL?

I'm probably missing something in AOP. In my limited understanding, as I see it, the number one reason for AOP is to provide a painless way to do the Visitor Pattern. In languages like Dylan and CLOS, the Visitor pattern is much easier given the dynamic dispatch mechanisms.