[SciPy-dev] Inclusion of cython code in scipy
Nathan Bell
wnbell at gmail.com
Wed Apr 23 10:52:22 EDT 2008
On Wed, Apr 23, 2008 at 3:02 AM, Stéfan van der Walt <stefan at sun.ac.za> wrote:
>
> The idea is, of course, that Cython should ultimately *not* be a
> special-purpose language, but as close to Python as possible. That is
> also why we rely on those two GSOC projects, which try to eliminate
> the ndarray indexing differences between Python and Cython. That way,
> in 10 years you'll still have Python code, even if cython doesn't
> exist any more. Hopefully, by then, PyPy or some such project would
> have capitalised on VM developments to such extent that your Python
> code runs as fast as the current C code (look at what the jruby guys
> have accomplished, for example).
Then, of course, the discussion is moot.
However, a cursory look at the current SAGE source code reveals that
*in practice* Cython is very much a special-purpose language.
> Your SWIG wrappers are easy to read, but that is not the case for some
> other parts of NumPy and SciPy, though, so I buy Matthew's argument:
> to increase the number of eyes on our code, we should improve
> readability.
That argument works as long as Cython source code resembles Python
source code in appearance and function.
> For example, I could see that implementing lil_matrix in
> Cython would make sense, given that it runs for loops over Python
> lists. Also, a great number of bugs in NumPy originate from reference
> counting errors, which are notoriously hard to catch; Cython helps
> skirt those issues.
I agree, lil_matrix is a good candidate for Cython.
--
Nathan Bell wnbell at gmail.com
http://graphics.cs.uiuc.edu/~wnbell/
More information about the SciPy-Dev
mailing list