On Wed, 1 Jul 2020 21:14:00 +0100
Rob Cliffe via Python-Dev
Whoa!
I have an uneasy feeling about this PEP.
AFAIK the usual procedure for adding a new feature to Python is: An idea is raised and attracts some support. Someone sufficiently motivated writes a PEP. The PEP is thoroughly discussed. Eventually a consensus (or at least an "agree to differ" stalemate) is reached. The PEP is accepted (if it is). (Then and only then) Someone works on the implementation. etc.
However, PEP 622 only seems to have been presented to the Python community only *after* a well-developed (if not finalised) implementation was built. A fait accompli.
I think what you describe as "the usual procedure" isn't as usual as you think. For example, when I wrote PEP 442 (Safe object finalization), I don't remember a preliminary round of raising support for the idea. I had that idea in mind after repeated frustration with the previous finalization semantics, attempted writing an implementation which ended up functional, and then wrote a PEP from it. That said, PEP 622 is a much broader PEP adding a whole new syntactical feature with unusual semantics attached to it, so it's conceivable to be more cautious with the discussion process. Regards Antoine.