Fernando,

When I wrap a C package I spend 95% of my time modifying the package to run as a library and 5% of the time hand-wrapping it for python.  I find that hand-wrapping makes me more aware of the interface than using swig, so I can recode portions of the library to make the overall package work better.  A quick look at the cyrex documentation makes me wonder if it is primarily  written for those who haven't written much C-code..  Is this an accurate impression?  I don't want to spend time learning another set of syntax to do something I already know how to do.

John

On Thu, Mar 6, 2008 at 12:15 PM, Fernando Perez <fperez.net@gmail.com> wrote:
 Hi all,

 after the Scipy/Sage Days 8 meeting, we were all very impressed by the
 progress made by Cython.  For those not familiar with it, Cython:

 http://www.cython.org/

 is an evolved version of Pyrex (which is used by numpy and scipy) with
 lots of improvements.  We'd like to position Cython as the preferred
 way of writing most, if not all, new extension code written for numpy
 and scipy,  as it is easier to write, get right, debug (when you still
 get it wrong) and maintain than writing to the raw Python-C API.

 A specific project along these lines, that would be very beneficial
 for numpy could be:

 - Creating new matrix types in cython that match the cvxopt matrices.
 The creation of new numpy array types with efficient code would be
 very useful.

 - Rewriting the existing ndarray subclasses that ship with numpy, such
 as record arrays,  in cython.  In doing this, benchmarks of the
 relative performance of the new code should be obtained.


 Another possible project would be the addition to Cython of syntactic
 support for array expressions, multidimensional indexing, and other
 features of numpy.  This is probably more difficult than the above, as
 it would require fairly detailed knowledge of both the numpy C API and
 the Cython internals, but would ultimately be extremely useful.


 Any student interested in this should quickly respond on the list;
 such a project would likely be co-mentored by people on the Numpy and
 Cython teams, since it is likely to require expertise from both ends.

 Cheers,

 f
_______________________________________________
Scipy-dev mailing list
Scipy-dev@scipy.org
http://projects.scipy.org/mailman/listinfo/scipy-dev



--
John Ollinger
University of Wisconsin
Waisman Center, T233
1500 Highland Ave
Madison, WI 53711
http://brainimaging.waisman.wisc.edu/~jjo/