Changes between Version 6 and Version 7 of SummerofCodeIdeas
- Timestamp:
- 01/12/09 23:29:17 (4 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
SummerofCodeIdeas
v6 v7 1 1 [[PageOutline]] 2 = !NumPy/Cython =3 After the Scipy/Sage Days 8 meeting, we were all very impressed by the progress made by Cython. For those not familiar with it, [http://www.cython.org/ 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.4 2 5 A specific project along these lines, that would be very beneficial for numpy could be: 3 * Port NumPy/SciPy to Python 3.0 6 4 7 * 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. 5 * Date/time types 6 http://projects.scipy.org/scipy/numpy/browser/trunk/doc/neps/datetime-proposal3.rst 8 7 9 * 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.8 * integrate Jonathan Taylor's statistical models into scipy.stats. 10 9 10 * improve datasource and integrate it into all the numpy/scipy io 11 http://projects.scipy.org/scipy/numpy/browser/trunk/numpy/lib/_datasource.py 11 12 12 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. 13 * clean up, refactor scipy package structure: 14 scipy.lib, scipy.misc, scipy.stsci 13 15 14 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. 16 * modernize, clean-up scipy.weave/numpy.f2py, integrate fast-vectorize 15 17 16 = Statistics =17 18 * [http://scipy.org/scipy/scipy/milestone/StatisticsCleanup Cleanup] 18 19 = Scikits =20 21 = Bayesian Networks =22 23 = Machine Learning =
