<div class="gmail_quote">On Sun, Jun 1, 2008 at 2:15 AM, Raymond Hettinger &lt;<a href="mailto:python@rcn.com">python@rcn.com</a>&gt; wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
Proposal<br>
--------<br>
Remove non-essential abstract methods like __index__, three argument __pow__,<br>
__lshift__, __rlshift__, __rshift__, __rrshift__, __and__, __rand__, __xor__,<br>
__rxor__, __or__, __ror__, and __invert__, numerator, and denominator.<br></blockquote><div><br></div><div>+1 from me.</div><div><br></div><div>I&#39;d support removing all these, minus the exceptions already pointed out</div>
<div>(__index__, numerator, denominator). &nbsp;As a (so far incomplete) effort</div><div>to speed up the Decimal type I recently implemented a decimal-based</div><div>integer type; &nbsp;this type would seem a natural candidate to inherit</div>
<div>from Integral, but&nbsp;the logical and shift operators above make less sense</div><div>for this type.</div><div><br></div><div>The other odd man out here is three-argument pow; &nbsp;this *is* a</div><div>method that makes sense for integers without reference to the</div>
<div>way they&#39;re stored. &nbsp;So maybe this should stay. &nbsp;(Though I&#39;ve</div><div>occasionally wondered why three-argument pow is part of the</div><div>core language, rather than being in the standard library.)</div><div>
<br></div><div>Mark</div><div><br></div></div>