[Python-Dev] Choosing a best practice solution for Python/extensionmodules

Brett Cannon brett at python.org
Fri Feb 20 21:41:26 CET 2009


On Fri, Feb 20, 2009 at 12:33, Raymond Hettinger <python at rcn.com> wrote:

> [Brett]
>
>> With io getting rewritten as an extension module, I think it's time to try
>> to come up with a good best practice scenario for how to be able to control
>> when  a module uses a pure Python implementation and when it uses extension
>> module optimizations. This is really only important for testing as if the
>> extension is missing then the pure Python version is just flat-out used.
>>
>
> There is also need in some modules where the two are not exactly equivalent
> or where there are multiple C extensions to choose from.  In PyYAML, there
> needs to be an easier way to switch parsers and emitters (i.e. LibYAML).
> There are similar issues with xmlrpclib with the choice of parsers,
> marshallers,
> and unmarshallers.  Possibly, the same mechanism can offer the user more
> control over which dbm is used when there are several choices.


So are you saying you want something that takes multiple arguments like
``use_extension(py_name, *ext_names)``? Or are you wanting to go down the
road of modules needing to define their own functions to use or unwind
changes?

-Brett
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/python-dev/attachments/20090220/e26a40af/attachment-0001.htm>


More information about the Python-Dev mailing list