[Cython] What now?

Robert Bradshaw robertwb at math.washington.edu
Thu Aug 18 23:35:02 CEST 2011


On Wed, Aug 17, 2011 at 10:32 PM, Stefan Behnel <stefan_ml at behnel.de> wrote:
> Stefano, 11.08.2011 16:24:
>>
>> now that I've nailed Cython code, I'd like to get into something more
>> funny.
>> Currently, I'm working on a set of macros to seamlessy integrate Cython
>> into
>> CMake build process (in fact, I love CMake). But, I'd like to work also on
>> something more essential, so...
>
> Here's something truly essential that's been on our TODO list for ages, and
> it's not even that hard to do, given today's infrastructure (inline
> functions in .pxd files, function signature overloading and all that).
>
> http://wiki.cython.org/enhancements/overlaypythonmodules

+1, this is a high-impact feature that should be relatively easy to dig into.

> Basically, the idea is to use a .pxd for existing Python modules (especially
> stdlib modules) and to override *some* names in it with fast C functions.
>
> Approach:
>
> - for each normally "import"-ed module (except for relative imports), search
> for a corresponding .pxd file in both the PYTHONPATH and under
> Cython/Includes/cpython/
>
> - if found, build a scope for it that falls through to the scope of the
> normally imported Python module, but looks up names in the .pxd namespace
> first.
>
> For testing, write a cpython/math.pxd that contains replacements for *some*
> of the functions and constants in Python's math module.
>
> There is obviously a bit more to it than the short wrap-up above. For
> example, if none of the signatures of a function in the .pxd matches, it
> would have to fall through to the module as well. That isn't all that easy
> to accomplish with just a name lookup. But it's also not strictly required
> for an initial implementation, it would just mean that your math.pxd
> implementation would have to be provide a complete set of signatures for the
> functions it offers. I think the math module is particularly friendly here.
>
> Interested?
>
> Stefan
> _______________________________________________
> cython-devel mailing list
> cython-devel at python.org
> http://mail.python.org/mailman/listinfo/cython-devel
>


More information about the cython-devel mailing list