This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

Author mark.dickinson
Recipients eryksun, mark.dickinson, rhettinger, serhiy.storchaka, tim.peters, tomerv
Date 2019-08-14.07:01:07
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <1565766068.0.0.404634138142.issue37831@roundup.psfhosted.org>
In-reply-to
Content
[Raymond]

> Given that & | and ^ are closed under bools [...]

So maybe the right fix is to change that fact? I'm not sure what the value of having True & True return True rather than 1 is, beyond misleading people into thinking that bitwise operators "just work" as logical operators on bools. Having True & True give 1 would send a clearer message that "yes, this works, but only because of the bool-is-an-int relationship, and it's not the right way to do logical operations".

Does anyone know what the rationale was for having & and | on bools return bools in the first place?
History
Date User Action Args
2019-08-14 07:01:08mark.dickinsonsetrecipients: + mark.dickinson, tim.peters, rhettinger, serhiy.storchaka, eryksun, tomerv
2019-08-14 07:01:07mark.dickinsonsetmessageid: <1565766068.0.0.404634138142.issue37831@roundup.psfhosted.org>
2019-08-14 07:01:07mark.dickinsonlinkissue37831 messages
2019-08-14 07:01:07mark.dickinsoncreate