[Cython] Shared Cython runtime

Stefan Behnel stefan_ml at behnel.de
Tue Apr 9 17:12:28 CEST 2013


mark florisson, 09.04.2013 16:51:
> On 9 April 2013 15:47, Stefan Behnel wrote:
> 
>> mark florisson, 09.04.2013 16:32:
>>> On 9 April 2013 14:55, Nikita Nemkin wrote:
>>>> One alternative for code reuse in large Cython projects
>>>> could be packaging multiple modules into one shared library.
>>>
>>> We have 'include'! :) Seriously though, that wouldn't work well with the
>>> import mechanism, and probably not for C compile time either.
>>
>> CPython has support for it. It's actually quite easy, you basically just
>> register all module init functions explicitly at init time and let CPython
>> do the rest.
>>
>> So, compiling a package into one big Cython module with shared internal
>> types and utility code should be quite simple and would IMHO be a very cool
>> feature.
> 
> I was unaware of that, it'd be a nice feature then (though still not imho
> the right solution to a runtime system). How does this work? Feel free to
> point me at some documentation.

It's the inittab mechanism, as described starting here:

http://docs.python.org/2/c-api/import.html#PyImport_AppendInittab

Stefan



More information about the cython-devel mailing list