>>> inf =3 >>> eval(repr([1.0, 2.0, float('inf')]))
Obviously these are edge cases, and we could spent all day going over particular cases which the repr -> eval identity doesn't hold. However I still think that, as a principle, it's a solid one. I think changing the repr of 'inf' to 'float('inf')' is a decent solution (but keeping str conversion the same). So, I guess in order to reduce backwards incompatibility, the repr could be modified to return a string which actually generates an infinite value On Sat, Sep 5, 2020, 8:14 PM David Mertz <me...@gnosis.cx> wrote: > On Sat, Sep 5, 2020 at 7:26 PM Greg Ewing <greg.ew...@canterbury.ac.nz> > wrote: > >> On 6/09/20 8:08 am, David Mertz wrote: >> > The only real goal I've seen is that you hope that `x == eval(repr(x))` >> > for floating point numbers. But that is doomed to failure since it >> > cannot work for NaN by its very definition. >> >> I think that just means the definition needs a bit more finesse. >> It would be a reasonable goal for it to give back *some* NaN >> with the same flags and payload as the original. >> > > Sure, but we have that already: > > >>> from math import inf, nan > >>> eval(repr([42, nan, inf])) > [42, nan, inf] > > The only difference is the `math` namespace vs `builtins` namespace. > > -- > The dead increasingly dominate and strangle both the living and the > not-yet born. Vampiric capital and undead corporate persons abuse > the lives and control the thoughts of homo faber. Ideas, once born, > become abortifacients against new conceptions. > _______________________________________________ > Python-ideas mailing list -- python-ideas@python.org > To unsubscribe send an email to python-ideas-le...@python.org > https://mail.python.org/mailman3/lists/python-ideas.python.org/ > Message archived at > https://mail.python.org/archives/list/python-ideas@python.org/message/HP5R24IXRL5LST3OQWWNNTALHLUCIVUN/ > Code of Conduct: http://python.org/psf/codeofconduct/ >
_______________________________________________ Python-ideas mailing list -- python-ideas@python.org To unsubscribe send an email to python-ideas-le...@python.org https://mail.python.org/mailman3/lists/python-ideas.python.org/ Message archived at https://mail.python.org/archives/list/python-ideas@python.org/message/2YJDNWCQCSREXVZWYDSIRO6L4ZJFYWJ3/ Code of Conduct: http://python.org/psf/codeofconduct/