On Mon, Apr 25, 2022 at 10:32:15PM -0700, Larry Hastings wrote:

[...]
> Whichever spelling we use here, the key idea is that C is bound to a 
> "ForwardClass" object.  A "ForwardClass" object is /not/ a class, it's a 
> forward declaration of a class.  (I suspect ForwardClass is similar to a 
> typing.ForwardRef, though I've never worked with those so I couldn't say 
> for sure.)

I know that the three devs working on this plan (Larry, Barry, Mark) are 
extremely competent, well-respected people, but this proto-PEP really 
feels to me like you aren't heavy users of typing and are proposing an 
extremely complex, complicated, problematic "solution" which even the 
typing people don't want.

Carl Meyer has repeatedly said that this proposal won't solve the issues 
that you have designed it to solve. I don't think you have responded to 
him either time, which is worrying.

https://mail.python.org/archives/list/python-dev@python.org/message/NMCS77YFM2V54PUB66AXEFTE4NXFHWPI/

https://mail.python.org/archives/list/python-dev@python.org/message/RVQSLD435BFKEVIMY2AIA5MCJB37BPHK/

Now Carl is only one person, and not necessarily representative, but 
Jelle Zijlstra is also heavily involved with mypy and typeshed and has 
expressed serious doubts about this proposal as well.

So unless somebody with solid experience in typing contradict Carl and 
Jelle, we ought to take their comments as definitive and trust them that 
these "ForwardClass" objects won't solve the problem of forward 
declarations (or indeed that the problem doesn't really need solving 
beyond the two PEPs already on the table, plus stringified types).

I realise that you have invested a lot of time and energy into this 
proto-PEP, but if it fails to solve the forward declaration problem, and 
introduces problems of its own, then maybe we should not fall into the 
Sunk Costs fallacy by continuing to debate the best syntax and 
implementation for something that we don't need.


-- 
Steve
_______________________________________________
Python-Dev mailing list -- python-dev@python.org
To unsubscribe send an email to python-dev-le...@python.org
https://mail.python.org/mailman3/lists/python-dev.python.org/
Message archived at 
https://mail.python.org/archives/list/python-dev@python.org/message/7JIR2D3WUCHHXVTQUQV57XY5VXSBWAVN/
Code of Conduct: http://python.org/psf/codeofconduct/

Reply via email to