Why isn’t __new__ in Python new-style classes a class method?
__new__ being static method allows a use-case when you create an instance of a subclass in it: return super(<currentclass>, cls).__new__(subcls, *args, **kwargs) If new is a class method then the above is written as: return super(<currentclass>, cls).new(*args, **kwargs) and there is no place to put subcls. I don’t really see when that would be a … Read more