> With apologies for the delay, here are my notes from the numeric coercion > day. > > There were many topics which were defined by the Timbot to be within the > scope of the discussion. Those included: > > - Whether numbers should be rationals / binary FP / decimal FP / etc. > - Whether there should be support for both exact and inexact computations > - What division means. > > There were few "deliverables" at the end of the day, mostly a lot of > consternation on all sides of the multi-faceted divide, with the impression > in at least this observer's mind that there are few things more > controversial than what numbers are for and how they should work. A few > things emerged, however: > > 0) There is tension between making math in Python 'understandable' to a > high-school kid and making math in Python 'useful' to an engineer/scientist. > > 1) We could consider using the new warnings framework for noting things > which are "dangerous" to do with numbers, such as: > > - noting that an operation on 'plain' ints resulted in a 'long' > result. > - using == when comparing floating point numbers > > 2) The Fortran notion of "Kind" as an orthogonal notion to "Type" may make > sense (details to be fleshed out). > > 3) Pythonistas are good at quotes: > > "You cannot stop people from complaining, but you can influence what > they > complain about." - Tim Peters > > "The only problem with using rationals for money is that money, is, > well, not rational." - Moshe Zadka > > "Don't get too apoplectic about this." - Tim Peters > > 4) We all agreed that "2" + "23" will not equal "25". > > --david ascher Thanks for the notes. I couldn't be at the meeting, but I attended a post-meeting lunch roundtable, where much of the above confusion was reiterated for my convenience. Moshe's three or four PEPs also came out of that. One thing we *could* agree to there, after I pressed some people: 1/2 should return 0.5. Possibly 1/2 should not be a binary floating point number -- but then 0.5 shouldn't either, and whatever happens, these (1/2 and 0.5) should have the same type, be it rational, binary float, or decimal float. --Guido van Rossum (home page: http://www.python.org/~guido/)
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4