[Python-Dev] 'new' and 'types'
Fri, 14 Jun 2002 19:15:58 +0300
Patch 568629 removes the built-in module new (with sincere apologies to
Tommy Burnette ;-) and replaces it with a tiny Python module consisting of a
single import statement:
"""This module is no longer required except for backward compatibility.
Objects of most types can now be created by calling the type object. """
from types import \
ClassType as classobj, \
CodeType as code, \
FunctionType as function, \
InstanceType as instance, \
MethodType as instancemethod, \
ModuleType as module
These types (as well as buffer and slice) have been made callable. It looks
like the Python core no longer has any objects that are created by a
separate factory function (there are still some in the Modules).
Now, what about the types module? It has been suggested that this module
should be deprecated. I think it still has some use: we need a place to put
all the types that are not used often enough to be added to the builtins.
I suggest that they be placed in the module 'types' with names matching their
__name__ attribute. The types module will still have the long MixedCaseType
names for backward compatibility. The use of the long names should be
deprecated, not the types module itself.