On Wed, 8 Dec 2021 at 18:09, Chris Angelico <ros...@gmail.com> wrote:
>
> On Thu, Dec 9, 2021 at 4:55 AM Stephen J. Turnbull
> <stephenjturnb...@gmail.com> wrote:
> > But the "good idea" of general deferreds is only marginally relevant
> > to our -1s.  It's those -1s that constitute the main issue for Chris,
> > since they're a noisy signal that the SC might think as we do.
>
> Please explain to me *exactly* what your arguments against the current
> proposal are. At the moment, I am extremely confused as to what people
> actually object to, and there's endless mischaracterization and
> accusation happening.
>
> Can we actually figure out what people are really saying, and what the
> problems with this proposal are?
>
> NOT that there might potentially be some other proposal, but what the
> problems with this one are. Argue THIS proposal, not hypothetical
> other proposals.

Note that I'm not vehemently -1 on this PEP, but I am against it. So
I'm not necessarily one of the people whose response you need and are
asking for here, but my views are part of the opposition to the PEP.
So here's my problems with this proposal:

1. The problem that the PEP solves simply isn't common enough, or
difficult enough to work around, to justify new syntax, plus a second
way of defining default values.
2. There's no syntax that has gained consensus, and the objections
seem to indicate that there are some relatively fundamental
differences of opinion involved.
3. There's no precedent for languages having *both* types of binding
behaviour. Sure, late binding is more common, but everyone seems to
pick one form and stick with it.
4. It's a solution to one problem in the general "deferred expression"
space. If it gets implemented, and deferred expressions are added
later, we'll end up with two ways of achieving one result, with one
way being strictly better than the other. (Note, for clarity, that's
*not* saying that we should wait for something that might never
happen, it's saying that IMO the use case here isn't important enough
to warrant rushing a partial solution).

To be 100% explicit, none of the above are showstopper objections
(some, like the choice of syntax, are pretty minor). I'm not arguing
that they are. Rather, my problem with the PEP is that we have a
number of individually small issues like this, which aren't balanced
out by a sufficiently compelling benefit. The PEP isn't *bad*, it's
simply not good *enough* (IMO). And it's not obvious how to fix the
issue, as there's no clear way to increase the benefit side of the
equation. That sucks, as it's a lot of work to write a PEP, and "meh,
I'm not convinced" is the worst possible response. But that's how this
feels to me.

The reason deferred objects keep coming up is because they *do* have a
much more compelling benefit - they help in a much broader range of
cases. It's fine to say they are a different proposal, and that "but
we might get deferred expressions" is a flawed objection (which it is,
if that's all the objection consists of). But rejecting that argument
doesn't do anything to improve the weak benefits case for late-bound
defaults, or to fix the various minor problems that weigh it down.

All IMO, of course...

Paul
_______________________________________________
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/OAGZ6MDGIAQ6HAHHMXL2LLLZ4FNBUFT3/
Code of Conduct: http://python.org/psf/codeofconduct/

Reply via email to