Shouldn't we optimize the usability for pure-Python first, and then for C API?
Right now we have the '__new__' magic method, which isn't a @classmethod. Making '__class_getitem__' a @classmethod will confuse regular Python users. For example: class Foo: def __new__(cls, ...): pass @classmethod def __class_getitem__(cls, item): pass To me it makes sense that type methods that are supposed to be called on type by the Python interpreter don't need the classmethod decorator. METH_STATIC is a public working API, and in my opinion it's totally fine if we use it. It's not even hard to use it, it's just *mildly* inconvenient at most. Yury _______________________________________________ Python-Dev mailing list Python-Dev@python.org https://mail.python.org/mailman/listinfo/python-dev Unsubscribe: https://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com