[Cython] array expressions

Stefan Behnel stefan_ml at behnel.de
Mon Aug 27 13:40:03 CEST 2012


mark florisson, 27.08.2012 13:13:
> On 27 August 2012 12:06, Stefan Behnel wrote:
>> My experience with lxml tells me that it's often better to keep things
>> separate but integrated, instead of shipping them in a big box. As long as
>> it doesn't hurt too much to have separate tools, we should keep it that
>> way. Those who prefer everything in a big box can use distributions like
>> Sage, or use apt.
>>
>> As for versioning, you can set dependency version ranges in distutils (and
>> friends) which are honoured by install tools like pip. That keeps the
>> installation fully automatic (and definitely not "a lot more pain"). That
>> being said, the best way to handle this is to build a well defined
>> interface between the two components and to keep that alive for a while.
>>
>> For Jenkins, we'd set up separate jobs that build the dependencies and then
>> install them from there before running the integration tests. We could even
>> have dedicated integration test jobs that only run the tests that involve
>> the dependency (and potentially more than one version of the dependency).
> 
> Oh great, that works for me as well. I thought Cython's take was to
> avoid dependencies by shipping everything (like Plex and Tempita).

Those are core dependencies. Plex is actually modified IIRC, and even
compiled. Tempita was specifically chosen because it's so small and can be
shipped.


> I'll make minivect distributable, then.

I think the difference here is that it's an optional dependency. It makes
sense independently as well when used with other tools. And from my distant
view, it seems like it could deserve its own project.

The code tree looks a bit disorganised currently, with a lot of modules at
the top level. I guess that's what you meant when you said "make it
distributable".

BTW, have you been in touch with the PyPy people about this? They should
have implemented their own vectorisation for what they call numpypy. Maybe
your tool would be of interest for them as well?

Stefan



More information about the cython-devel mailing list