On Wed, 27 Apr 2022 at 05:05, Larry Hastings <larry@hastings.org> wrote:
On 4/26/22 09:31, MRAB wrote:
Perhaps:
class C: ...
Also, your suggestion is already legal Python syntax; it creates a class with no attributes. So changing this existing statement to mean something else would potentially (and I think likely) break existing code.
Not sure if it quite counts as "existing code", but I do often use this notation during development to indicate that this class will exist, but I haven't coded it yet. (In contrast, "class C: pass" indicates that an empty body is sufficient for this class, eg "class SpamException(Exception): pass" which needs no further work.) If a less subtle distinction is needed, what about "class C = None"? That removes the expectation of a colon and body. Personally, I'm still inclined towards the kwarg method, though ("class C(forward=True): pass"), since it's legal syntax. ChrisA