[Python-Dev] [Python-checkins] r64424 - in python/trunk:Include/object.h Lib/test/test_sys.py Misc/NEWSObjects/intobject.c Objects/longobject.c Objects/typeobject.cPython/bltinmodule.c

Eric Smith eric+python-dev at trueblade.com
Thu Jun 26 14:23:49 CEST 2008


Actually, after saying I was opposed to __bin__ in 2.6, I said:
"Instead, I think the approach used in 3.0 (r64451) should be used 
instead.  That is, if this feature exist at all.  I'm -0 on adding 
bin(), etc. to floats."

My last sentence is a little unclear.  I meant I'm -0 on adding floats 
as arguments to bin(), oct(), and hex().  Primarily because a) it's not 
extensible in 3.0, and b) I find it surprising, in that I'd expect those 
functions to throw an error for non-integral types (that is, those not 
having __index__).  I think adding a "float_as_binary_expression()" 
(with a better name) in some module would get the functionality you 
seek.  What is gained by adding this to bin() and friends?

Raymond Hettinger wrote:
> From: "Guido van Rossum" <guido at python.org>
>> I don't care about the details of the patch until we have agreement
>> about which form the feature should take. We don't have that agreement
>> yet.
> 
> Updated to the patch to address everyone's review comments:
>       http://bugs.python.org/file10742/float8.diff
> 
> * Alexander Belopolsky requested exponential notation instead of 
> potentially very long strings of bits.  Done
> 
> * Alexander Belopolsky requested  true mathematical radix 2 
> representation of a float rather than its 64-bit memory layout.  Done
> 
> * Antoine Pitrou requested that hex() and oct() be supported as well as 
> bin().  Terry J. Reedy also requested support for hex(). Done.
> 
> * Alexander Belopolsky and Alexandre Vassalotti requested that the 
> output be a two-way street -- something that can be round-tripped 
> through eval().  Done.
> 
> * Amaury Forgeot d'Arc requested that the implementation not manipulate 
> C strings inplace.  Fixed -- used  PyUnicode_FromFormat() instead.
> 
> * Amaury Forgeot d'Arc requested that tests should check if negative 
> numbers have the same representation as their absolute value. Done.
> 
> * Mark Dickinson requested sign preserving output for bin(-0.0).  We 
> couldn't find a clean way to do this without a special cased output format.
> 
> * Mark Dickinson reviewed the NaN/Inf handling.  Done.
> 
> * Eric Smith requested that the routine be attached to 
> _PyFloat_to_base() instead of attaching to __bin__, __oct__, and 
> __hex__. Done.
> 
> * Guido requested that the docs be updated. Done.
> 
> * Guido requested that the globally visible C API function name be 
> prefixed with _Py.  Done.
> 
> * Mark Dickinson requested normalizing output to start with a 1 so that 
> nearby values have similar reprs.  Done.
> 
> 
> Raymond
> _______________________________________________
> Python-Dev mailing list
> Python-Dev at python.org
> http://mail.python.org/mailman/listinfo/python-dev
> Unsubscribe: 
> http://mail.python.org/mailman/options/python-dev/eric%2Bpython-dev%40trueblade.com 
> 
> 



More information about the Python-Dev mailing list