<br><br><div class="gmail_quote">On 25 July 2010 22:32, Jack Diederich <span dir="ltr"><<a href="mailto:jackdied@gmail.com">jackdied@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">
<div class="im">On Sun, Jul 25, 2010 at 5:20 PM, Bruce Leban <<a href="mailto:bruce@leapyear.org">bruce@leapyear.org</a>> wrote:<br>
> Let me see if I understand this:<br>
><br>
> False in [False]<br>
><br>
> Returns True now but would return False with your change.<br>
<br>
</div>Bigtime.  Official side-effects are neat for hacks but bad for<br>
maintainable code.  You don't know pain until another developer<br>
complains that you refactored user.is_admin() to no longer return the<br>
user's object (for the record that happened in perl, but it could in<br>
python too).  Boolean test operations should return bools</blockquote><div><br><br>Most of them don't and this can be useful. Why should __contains__ enforce it when other boolean operations don't? Inconsistency is also bad.<br>
<br> </div><blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;"> for the same<br>
reason that in-place operations should return None.<br></blockquote><div><br><br>What do you mean by "in-place operations should return None"?<br><br>For mutable objects __iadd__ and friends should return self. For immutable ones they return the new value. Probably I misunderstand what you mean.<br>
<br>Michael<br><br> </div><blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">
<font color="#888888"><br>
-Jack<br>
</font><div><div></div><div class="h5">_______________________________________________<br>
Python-ideas mailing list<br>
<a href="mailto:Python-ideas@python.org">Python-ideas@python.org</a><br>
<a href="http://mail.python.org/mailman/listinfo/python-ideas" target="_blank">http://mail.python.org/mailman/listinfo/python-ideas</a><br>
</div></div></blockquote></div><br><br clear="all"><br>-- <br><a href="http://www.voidspace.org.uk">http://www.voidspace.org.uk</a><br><br><br>