On Sun, Jul 22, 2018 at 10:55 PM Chris Angelico <ros...@gmail.com> wrote: > > On Mon, Jul 23, 2018 at 6:43 AM, Giampaolo Rodola' <g.rod...@gmail.com> wrote: > > On Sun, Jul 22, 2018 at 10:01 PM Chris Angelico <ros...@gmail.com> wrote: > >> > >> On Mon, Jul 23, 2018 at 1:09 AM, Giampaolo Rodola' <g.rod...@gmail.com> > >> wrote: > >> > On Sun, Jul 22, 2018 at 3:38 PM Chris Angelico <ros...@gmail.com> wrote: > >> > I find it less explicit mainly because it does 3 things at once: check > >> > if attribute is None, use it if it's not None and continue the > >> > evaluation from left to right. I find that logic to be more explicit > >> > when living on different lines or is clearly delimited by keywords and > >> > spaces. ? has no spaces, it's literally "variable names interrupted by > >> > question marks" and evaluation can stop at any time while scanning the > >> > line from left to right. Multiple "?" can live on the same line so > >> > that's incentive to write one-liners, really, and to me one-liners are > >> > always less explicit than the same logic split on multiple lines. > >> > >> Ah, I see what you mean. Well, think about what actually happens when > >> you write "lst.sort()". In terms of "hidden behaviour", there is far > >> FAR more of it in existing syntax than in the new proposals. > > > > I am not sure I'm following you (what does lst.sort() have to do with "?"?). > > The "." in "lst.sort" is an operator. How much hidden behaviour is > there in that? Do you actually even know every possible thing that can > happen? Don't feel bad if you don't - it's not an indictment of your > quality as a programmer, but an acknowledgement that Python's > attribute access is incredibly complicated.
I'm going to engage into a discussion about the analogy between "?" and "." because simply there is none. It doesn't prove anything except that you're not really interested in having a serious discussion about the pros and cons of this PEP: you just want it to happen no matter what. > Imagine if we were talking about people, rather than features in a > language; imagine if, to join the Warriors Guild, you had to first > slay a red dragon with nothing but a rusty dagger, despite none of the > existing members having done so. Is that reasonable to ask? Can you > say "well, the guild is mature now, so yeah, it's a good thing"? Ditto. -- Giampaolo - http://grodola.blogspot.com _______________________________________________ Python-ideas mailing list Python-ideas@python.org https://mail.python.org/mailman/listinfo/python-ideas Code of Conduct: http://python.org/psf/codeofconduct/