<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Comments for UncleZeiv&#039;s Corner</title>
	<atom:link href="http://unclezeiv.kerid.org/comments/feed" rel="self" type="application/rss+xml" />
	<link>http://unclezeiv.kerid.org</link>
	<description>still in love with underscores</description>
	<lastBuildDate>Mon, 16 Jan 2012 02:10:08 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
	<item>
		<title>Comment on About keyboard layouts by Reynante Martinez</title>
		<link>http://unclezeiv.kerid.org/2012/01/about-keyboard-layouts/comment-page-1#comment-12748</link>
		<dc:creator>Reynante Martinez</dc:creator>
		<pubDate>Mon, 16 Jan 2012 02:10:08 +0000</pubDate>
		<guid isPermaLink="false">http://unclezeiv.kerid.org/?p=169#comment-12748</guid>
		<description>Check out the &#039;setxkbmap&#039; command http://linux.die.net/man/1/setxkbmap

I have mine setup in a shortcut so whenever I want to use the DVORAK layout, I can just click the button (with a &#039;setxkbmap dvorak&#039; command).  And if I wanted to switch back to QWERTY, I just click the other button (with a &#039;setxkbmap us&#039; command mapped).

Pretty handy, IMO. :)

-Reyn</description>
		<content:encoded><![CDATA[<p>Check out the &#8216;setxkbmap&#8217; command <a href="http://linux.die.net/man/1/setxkbmap" rel="nofollow">http://linux.die.net/man/1/setxkbmap</a></p>
<p>I have mine setup in a shortcut so whenever I want to use the DVORAK layout, I can just click the button (with a &#8216;setxkbmap dvorak&#8217; command).  And if I wanted to switch back to QWERTY, I just click the other button (with a &#8216;setxkbmap us&#8217; command mapped).</p>
<p>Pretty handy, IMO. <img src='http://unclezeiv.kerid.org/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>-Reyn</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Reboot by UncleZeiv</title>
		<link>http://unclezeiv.kerid.org/2011/08/reboot/comment-page-1#comment-11796</link>
		<dc:creator>UncleZeiv</dc:creator>
		<pubDate>Thu, 29 Sep 2011 00:26:51 +0000</pubDate>
		<guid isPermaLink="false">http://unclezeiv.kerid.org/?p=145#comment-11796</guid>
		<description>&lt;a href=&quot;#comment-11615&quot; rel=&quot;nofollow&quot;&gt;@ZanQdo&lt;/a&gt; Hi my dear friend! We really had a good time back in the days ;) Don&#039;t hold your breath for my Gimp contributions, I&#039;ll probably wait the release of 2.8 before attempting anything substantial. I&#039;ll probably release a couple of scripts in the meanwhile though...

&lt;a href=&quot;#comment-11738&quot; rel=&quot;nofollow&quot;&gt;@Eleonor&lt;/a&gt; Thanks!</description>
		<content:encoded><![CDATA[<p><a href="#comment-11615" rel="nofollow">@ZanQdo</a> Hi my dear friend! We really had a good time back in the days <img src='http://unclezeiv.kerid.org/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' />  Don&#8217;t hold your breath for my Gimp contributions, I&#8217;ll probably wait the release of 2.8 before attempting anything substantial. I&#8217;ll probably release a couple of scripts in the meanwhile though&#8230;</p>
<p><a href="#comment-11738" rel="nofollow">@Eleonor</a> Thanks!</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on About getters and setters in Python by UncleZeiv</title>
		<link>http://unclezeiv.kerid.org/2009/08/about-getters-and-setters-in-python/comment-page-1#comment-11795</link>
		<dc:creator>UncleZeiv</dc:creator>
		<pubDate>Thu, 29 Sep 2011 00:24:21 +0000</pubDate>
		<guid isPermaLink="false">http://unclezeiv.kerid.org/?p=91#comment-11795</guid>
		<description>&lt;a href=&quot;#comment-8807&quot; rel=&quot;nofollow&quot;&gt;@Sean&lt;/a&gt; 
Thanks for pointing that out, although I think my main point still stands: for class hierarchies, proper getters and setters are just syntactically cleaner and easier to understand.

&lt;a href=&quot;#comment-11789&quot; rel=&quot;nofollow&quot;&gt;@Erik Bray&lt;/a&gt; 
Ah that&#039;s interesting, thanks for sharing! And again, it&#039;s an additional reason not to fiddle with properties in a class hierarchy if not necessary.

In the end I think class hierarchies are falling out of fashion, and in Python this is particularly true because duck typing is more general than inheritance-based polymorphism... So I guess this is why some mechanisms are not entirely orthogonal with respect to inheritance - in other words nobody cares. That&#039;s fine by me but then again I just wish Pythoners were not so smug in dismissing the use of getters and setters, as there are clearly cases for those...</description>
		<content:encoded><![CDATA[<p><a href="#comment-8807" rel="nofollow">@Sean</a><br />
Thanks for pointing that out, although I think my main point still stands: for class hierarchies, proper getters and setters are just syntactically cleaner and easier to understand.</p>
<p><a href="#comment-11789" rel="nofollow">@Erik Bray</a><br />
Ah that&#8217;s interesting, thanks for sharing! And again, it&#8217;s an additional reason not to fiddle with properties in a class hierarchy if not necessary.</p>
<p>In the end I think class hierarchies are falling out of fashion, and in Python this is particularly true because duck typing is more general than inheritance-based polymorphism&#8230; So I guess this is why some mechanisms are not entirely orthogonal with respect to inheritance &#8211; in other words nobody cares. That&#8217;s fine by me but then again I just wish Pythoners were not so smug in dismissing the use of getters and setters, as there are clearly cases for those&#8230;</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on About getters and setters in Python by Erik Bray</title>
		<link>http://unclezeiv.kerid.org/2009/08/about-getters-and-setters-in-python/comment-page-1#comment-11790</link>
		<dc:creator>Erik Bray</dc:creator>
		<pubDate>Wed, 28 Sep 2011 17:18:25 +0000</pubDate>
		<guid isPermaLink="false">http://unclezeiv.kerid.org/?p=91#comment-11790</guid>
		<description>Though it seems this quirk is actually a &quot;feature&quot;.  See: http://bugs.python.org/issue505028

I guess the answer is to not use super, and instead use the kludgy Foo.foo.fget/Foo.foo.fset.

It&#039;s claimed that data descriptors shouldn&#039;t be overridden by a subclass, but I can&#039;t see what the justification is for that proclamation.  There are perfectly good reasons to do this.</description>
		<content:encoded><![CDATA[<p>Though it seems this quirk is actually a &#8220;feature&#8221;.  See: <a href="http://bugs.python.org/issue505028" rel="nofollow">http://bugs.python.org/issue505028</a></p>
<p>I guess the answer is to not use super, and instead use the kludgy Foo.foo.fget/Foo.foo.fset.</p>
<p>It&#8217;s claimed that data descriptors shouldn&#8217;t be overridden by a subclass, but I can&#8217;t see what the justification is for that proclamation.  There are perfectly good reasons to do this.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on About getters and setters in Python by Erik Bray</title>
		<link>http://unclezeiv.kerid.org/2009/08/about-getters-and-setters-in-python/comment-page-1#comment-11789</link>
		<dc:creator>Erik Bray</dc:creator>
		<pubDate>Wed, 28 Sep 2011 17:13:17 +0000</pubDate>
		<guid isPermaLink="false">http://unclezeiv.kerid.org/?p=91#comment-11789</guid>
		<description>I recently encountered this problem--not for the first time in general, but the first time in which setters are involved.

Sean mentioned above that you can user super() to access the the property through the base class:

super(Bar, self).foo

This has always worked for me.  But interestingly, if I try to override a setter and I do:

@foo.setter
def foo(self, value):
    super(Bar, self).foo = value

It explodes with an AttributeError, claiming that the super object has no attribute &#039;foo&#039;.  I guess this has something to do with super.__setattr__, but I&#039;m not sure.  I&#039;d consider this a bug though.  Either one should work or neither should work.</description>
		<content:encoded><![CDATA[<p>I recently encountered this problem&#8211;not for the first time in general, but the first time in which setters are involved.</p>
<p>Sean mentioned above that you can user super() to access the the property through the base class:</p>
<p>super(Bar, self).foo</p>
<p>This has always worked for me.  But interestingly, if I try to override a setter and I do:</p>
<p>@foo.setter<br />
def foo(self, value):<br />
    super(Bar, self).foo = value</p>
<p>It explodes with an AttributeError, claiming that the super object has no attribute &#8216;foo&#8217;.  I guess this has something to do with super.__setattr__, but I&#8217;m not sure.  I&#8217;d consider this a bug though.  Either one should work or neither should work.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Reboot by Eleonor</title>
		<link>http://unclezeiv.kerid.org/2011/08/reboot/comment-page-1#comment-11738</link>
		<dc:creator>Eleonor</dc:creator>
		<pubDate>Thu, 22 Sep 2011 16:53:46 +0000</pubDate>
		<guid isPermaLink="false">http://unclezeiv.kerid.org/?p=145#comment-11738</guid>
		<description>welcome back and congrats to your marriage :-)</description>
		<content:encoded><![CDATA[<p>welcome back and congrats to your marriage <img src='http://unclezeiv.kerid.org/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Reboot by ZanQdo</title>
		<link>http://unclezeiv.kerid.org/2011/08/reboot/comment-page-1#comment-11615</link>
		<dc:creator>ZanQdo</dc:creator>
		<pubDate>Mon, 05 Sep 2011 06:13:45 +0000</pubDate>
		<guid isPermaLink="false">http://unclezeiv.kerid.org/?p=145#comment-11615</guid>
		<description>was about to remove this blog from my watched blogs :) i&#039;m glad all is fine and you&#039;ve decided to help in GIMP

cheers!</description>
		<content:encoded><![CDATA[<p>was about to remove this blog from my watched blogs <img src='http://unclezeiv.kerid.org/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  i&#8217;m glad all is fine and you&#8217;ve decided to help in GIMP</p>
<p>cheers!</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on About getters and setters in Python by Sean</title>
		<link>http://unclezeiv.kerid.org/2009/08/about-getters-and-setters-in-python/comment-page-1#comment-8807</link>
		<dc:creator>Sean</dc:creator>
		<pubDate>Fri, 11 Mar 2011 19:29:51 +0000</pubDate>
		<guid isPermaLink="false">http://unclezeiv.kerid.org/?p=91#comment-8807</guid>
		<description>In your first example, you could use super():
class Bar(Foo):
    @property
    def foo(self):
        return super( Bar, self).foo + 1

this way you don&#039;t need know if the attribute is a property instance

And in your second example, knowing it is a property, you can override the getter with:
class Bar(Foo):
    @Foo.foo.getter
    def foo( self ):
    	return super( Bar, self).foo + 1


This works for me in py2.6.5, obviously your article was from some time ago, I am not sure when exactly this became effective.</description>
		<content:encoded><![CDATA[<p>In your first example, you could use super():<br />
class Bar(Foo):<br />
    @property<br />
    def foo(self):<br />
        return super( Bar, self).foo + 1</p>
<p>this way you don&#8217;t need know if the attribute is a property instance</p>
<p>And in your second example, knowing it is a property, you can override the getter with:<br />
class Bar(Foo):<br />
    @Foo.foo.getter<br />
    def foo( self ):<br />
    	return super( Bar, self).foo + 1</p>
<p>This works for me in py2.6.5, obviously your article was from some time ago, I am not sure when exactly this became effective.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Indirect lighting teaser by vinz</title>
		<link>http://unclezeiv.kerid.org/2008/08/indirect-lighting-teaser/comment-page-1#comment-5568</link>
		<dc:creator>vinz</dc:creator>
		<pubDate>Wed, 24 Mar 2010 01:34:57 +0000</pubDate>
		<guid isPermaLink="false">http://unclezeiv.kerid.org/?p=45#comment-5568</guid>
		<description>Excellent work... thank you very much for doing that. It is a great and necessary feature for blender rendering :)</description>
		<content:encoded><![CDATA[<p>Excellent work&#8230; thank you very much for doing that. It is a great and necessary feature for blender rendering <img src='http://unclezeiv.kerid.org/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Still here by Marcus</title>
		<link>http://unclezeiv.kerid.org/2009/06/still-here/comment-page-1#comment-5149</link>
		<dc:creator>Marcus</dc:creator>
		<pubDate>Sat, 16 Jan 2010 22:19:20 +0000</pubDate>
		<guid isPermaLink="false">http://unclezeiv.kerid.org/?p=80#comment-5149</guid>
		<description>Hi,

I&#039;m very glad to see that lightcuts isn&#039;t dead yet. There are some features that are nice to play with (like smoke from Daniel Genrich) and get a lot of attention,
but some things that are really core features you need all the time (lightcuts for rendering, bmesh for modeling) should definetely get more attention.</description>
		<content:encoded><![CDATA[<p>Hi,</p>
<p>I&#8217;m very glad to see that lightcuts isn&#8217;t dead yet. There are some features that are nice to play with (like smoke from Daniel Genrich) and get a lot of attention,<br />
but some things that are really core features you need all the time (lightcuts for rendering, bmesh for modeling) should definetely get more attention.</p>
]]></content:encoded>
	</item>
</channel>
</rss>

