On 4/23/2022 9:55 AM, Jelle Zijlstra wrote:
However, it doesn't solve the problem for base classes. For example,
str is conceptually defined as `class str(Sequence["str"]):`. A
forward reference can't make `str` defined when the bases are
evaluated, because bases are resolved at the `forward class` stage.
Larry's second email "Proto-PEP part 2: Alternate implementation
proposal for "forward class" using a proxy object" discusses a
possibility to move the bases and metaclasses to the "continue class"
stage. It also has the advantage of not changing the behavior of
__new__, and I think is in general easier to reason about. He and I have
discussed this approach, but neither of have looked at in enough detail
to know if the implementation is possible. Some of the concerns are
noted in that email.
Eric
_______________________________________________
Python-Dev mailing list -- [email protected]
To unsubscribe send an email to [email protected]
https://mail.python.org/mailman3/lists/python-dev.python.org/
Message archived at
https://mail.python.org/archives/list/[email protected]/message/MODT7FKWYNDOR4D7LZRW2UOQB5OQSSJ3/
Code of Conduct: http://python.org/psf/codeofconduct/