[Python-Dev] PyTypeObject type names in Modules/ (original) (raw)

Eli Bendersky eliben at gmail.com
Tue Jan 1 17:00:01 CET 2013


Hello and happy 2013,

Something I noticed earlier today is that some C versions of stdlib modules define their name similarly to the Python version in their PyTypeObject. Some examples: Decimal, xml.etree's Element. Others prepend an understore, like _pickle.Pickler and many others.

What are the tradeoffs involved in this choice? Is there a "right" thing for types that are supposed to be compatible (i.e. the C extension, where available, replaces the Python implementation seamlessly)?

I can think of some meanings for pickling. Unpickling looks at the class name to figure out how to unpickle a user-defined object, so this can affect the pickle/unpickle compatibility between the C and Python versions. What else?

Eli -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://mail.python.org/pipermail/python-dev/attachments/20130101/86ea321c/attachment.html>



More information about the Python-Dev mailing list