Hooks, aspect-oriented programming, and design by contract
pedro_rodriguez at club-internet.fr
Wed Jan 23 12:07:47 CET 2002
"Michael Chermside" <mcherm at destiny.com> wrote:
> Several people pointed out small ways to start fitting aspect oriented
> programming into Python. Someone also asked what AOP is. Anyone
> interested in such things should check out
> http://www.zope.org/Members/pje/Wikis/TransWarp/HomePage which is a
> reasonable start toward providing Aspect Oriented Programming in Python.
> They also have pointers to good references on the subject.
> -- Michael Chermside
I checked those docs and I have got some remarks/questions about it :
- What is the current status of TransWarp ? Will this part of Zope 3 ?
- I get the impression that it got it the wrong way with Aspects :
+ an Aspect (Template) -> creates -> a Component (Class)
+ a Component (Class) -> creates -> a ComponentInstance (object)
Maybe this comes from the influence of AspectJ doc readings but
aspect concept should be orthogonal to class hierarchy and not mixed
in this way.
- In fact there is no more class hierarchy as we know it currently.
It defines its own hierarchy with aspects. Must be missing something
there, like : why is Aspect3 = (Aspect1+Aspect2)(...) better than
class Aspect3(Aspect1, Aspect2): ...
- TransWarp looks to be defining metaclasses and I got the feeling that
metaclasses can provide some helper methods to aspects, but are not
More information about the Python-list