<?xml version="1.0" encoding="UTF-8"?><feed xmlns="http://www.w3.org/2005/Atom"
      xmlns:thr="http://purl.org/syndication/thread/1.0"
>
        <id>http://livingcode.org/2009/02/24/aspect-oriented-python</id>
  <title type="html"><![CDATA[Comments on: Aspect-oriented Python]]></title>
  <link rel="self" href="http://livingcode.org/2009/02/24/aspect-oriented-python/feed" />
  <link rel="alternate" href="http://livingcode.org/2009/02/24/aspect-oriented-python" />   
  <author>
    <name>Dethe</name>
  </author>
  <generator uri="http://wordpress.org/" version="2.8.6">WordPress</generator>

<updated>2009-02-25T17:25:18Z</updated>
  <entry>
    <id>http://livingcode.org/2009/02/24/aspect-oriented-python/comment-page-1#comment-52</id>
    <updated>2009-02-25T09:25:18Z</updated>
    <title type="html"><![CDATA[Comment by: Hacker&#8217;s Guide to Getting in Shape &#187; Aspect-oriented Python and Metaclasses]]></title>
    <author>
<name><![CDATA[Hacker&#8217;s Guide to Getting in Shape &raquo; Aspect-oriented Python and Metaclasses]]></name><uri>http://www.hackersinshape.net/archives/67</uri>    </author>
    <link rel="alternate" href="http://livingcode.org/2009/02/24/aspect-oriented-python/comment-page-1#comment-52" />
    <thr:in-reply-to ref="http://livingcode.org/?p=134" href="http://livingcode.org/?p=134" type="application/xhtml+xml" source="http://livingcode.org/wp-atom.php"/> 
    <link rel="related" type="text/html" href="http://livingcode.org/?p=134" />
          <content type="html"><![CDATA[<p>[...] I came across a nice introductory post on AOP in Python by Dethe Elza titled Aspect-oriented Python. [...]</p>
]]></content>
        </entry>
  <entry>
    <id>http://livingcode.org/2009/02/24/aspect-oriented-python/comment-page-1#comment-53</id>
    <updated>2009-03-04T06:15:04Z</updated>
    <title type="html"><![CDATA[Comment by: [Python] AoP python &#171; Reading for Life]]></title>
    <author>
<name><![CDATA[[Python] AoP python &laquo; Reading for Life]]></name><uri>http://magicsword.wordpress.com/2009/03/04/python-aop-python/</uri>    </author>
    <link rel="alternate" href="http://livingcode.org/2009/02/24/aspect-oriented-python/comment-page-1#comment-53" />
    <thr:in-reply-to ref="http://livingcode.org/?p=134" href="http://livingcode.org/?p=134" type="application/xhtml+xml" source="http://livingcode.org/wp-atom.php"/> 
    <link rel="related" type="text/html" href="http://livingcode.org/?p=134" />
          <content type="html"><![CDATA[<p>[...] Aspect-Oriented Python&lt;http://livingcode.org/2009/aspect-oriented-python&gt; [...]</p>
]]></content>
        </entry>
  <entry>
    <id>http://livingcode.org/2009/02/24/aspect-oriented-python/comment-page-1#comment-54</id>
    <updated>2009-03-11T10:32:51Z</updated>
    <title type="html"><![CDATA[Comment by: gregturn]]></title>
    <author>
<name><![CDATA[gregturn]]></name><uri>http://springpython.webfactional.com</uri>    </author>
    <link rel="alternate" href="http://livingcode.org/2009/02/24/aspect-oriented-python/comment-page-1#comment-54" />
    <thr:in-reply-to ref="http://livingcode.org/?p=134" href="http://livingcode.org/?p=134" type="application/xhtml+xml" source="http://livingcode.org/wp-atom.php"/> 
    <link rel="related" type="text/html" href="http://livingcode.org/?p=134" />
          <content type="html"><![CDATA[<p>I agree that python makes it very easy to plugin things like AOP. In this situation, your AOP advice would be similar to AspectJ, where all instances of a class are wrapped with the advice. I coded an AOP module at <a href="http://springpython.webfactional.com/reference/html/aop.html" rel="nofollow">http://springpython.webfactional.com/reference/html/aop.html</a> that is based on a) not requiring advice to be applied to all instances and b) being non-intrusive and applicable even if you don&#8217;t have access to the original source. I think both of these are valid items any python developer should have.</p>
]]></content>
        </entry>
  <entry>
    <id>http://livingcode.org/2009/02/24/aspect-oriented-python/comment-page-1#comment-55</id>
    <updated>2009-03-11T11:13:56Z</updated>
    <title type="html"><![CDATA[Comment by: delza]]></title>
    <author>
<name><![CDATA[delza]]></name><uri>http://livingcode.org/</uri>    </author>
    <link rel="alternate" href="http://livingcode.org/2009/02/24/aspect-oriented-python/comment-page-1#comment-55" />
    <thr:in-reply-to ref="http://livingcode.org/?p=134" href="http://livingcode.org/?p=134" type="application/xhtml+xml" source="http://livingcode.org/wp-atom.php"/> 
    <link rel="related" type="text/html" href="http://livingcode.org/?p=134" />
          <content type="html"><![CDATA[<p>Hi Greg,  thanks for the pointer.  I intended this as a super-quick overview of the AOP-style features built in to recent versions of Python, so I didn&#8217;t explore aspects.py (<a href="http://www.cs.tut.fi/~ask/aspects/index.shtml)" rel="nofollow">http://www.cs.tut.fi/~ask/aspects/index.shtml)</a>, TransWarp (<a href="http://www.zope.org/Members/pje/Wikis/TransWarp/AOPTutorial/view" rel="nofollow">http://www.zope.org/Members/pje/Wikis/TransWarp/AOPTutorial/view</a>) or its successor, PEAK (<a href="http://peak.telecommunity.com/Articles/WhatisPEAK.html)" rel="nofollow">http://peak.telecommunity.com/Articles/WhatisPEAK.html)</a>.  In part because these projects never really seemed to take off, and in part because my own preference is for the lighter, more explicit &#8220;AOP-lite&#8221; of decorators over the full-on code weaving and join points model.  But I agree that both have their place in the toolbox.</p>
]]></content>
        </entry>
</feed>
