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:
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/