(test) ? a:b
Terry Reedy
tjreedy at udel.edu
Sun Oct 26 17:12:46 EDT 2014
More information about the Python-list mailing list
Sun Oct 26 17:12:46 EDT 2014
- Previous message (by thread): (test) ? a:b
- Next message (by thread): (test) ? a:b
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
On 10/26/2014 12:15 AM, Steven D'Aprano wrote: > Ben Finney wrote: > >> Steven D'Aprano <steve+comp.lang.python at pearwood.info> writes: >> >>> I suspect that Guido and the core developers disagree with you, since >>> they had the opportunity to fix that in Python 3 and didn't. >> >> That doesn't follow; there are numerous warts in Python 2 that were not >> fixed in Python 3. As I understand it, the preservation of bool–int >> equality has more to do with preserving backward compatibility. > > On reviewing PEP 285, I think it is safe to say that Guido *explicitly* > wants bools to be ints, not just for backwards compatibility: > > 4) Should we strive to eliminate non-Boolean operations on bools > in the future, through suitable warnings, so that for example > True+1 would eventually (in Python 3000) be illegal? > > => No. > > There's a small but vocal minority that would prefer to see > "textbook" bools that don't support arithmetic operations at > all, but most reviewers agree with me that bools should always > allow arithmetic operations. > > http://legacy.python.org/dev/peps/pep-0285/ Thank you for digging this up. I was one of the 'most reviewers'. Even though filter now returns an iterator, so that one can write sum(1 for _ in filter(None, iterable_of_bools)) without creating an unneeded itermediate list, I still prefer sum(iterable_of_bools) for efficiency not only for the machine but also for me writing and reading. [snip of fine disquisition on the subject to which I have nothing to add] -- Terry Jan Reedy
- Previous message (by thread): (test) ? a:b
- Next message (by thread): (test) ? a:b
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
More information about the Python-list mailing list