NumPy Status Update
morepypy.blogspot.comI hate to be that guy, but all it says is that 'more progress has been made on the NumPy compatibility front'. Progress is great, but am I missing something news worthy here? Is this a milestone when I can run my numpy 1.4 compatible processing code on pypy?
I think the way to the HN frontpage is completely random. PyPy 2.2 release (which features incremental GC and a bunch of cool stuff) was not newsworthy, a random, not very significant progress report is.
Is there more background context for this? I recently have been getting into numpy and wondering what I'm missing. So I'm curious about this post, but wanting more information.
PyPy [1] is an alternative implementation of a python interpreter written in python. It includes a JIT to speed up frequently run code [2]. The canonical python interpreter is written in c, hence cpython[3], numpy interfaces with this cpython interpreter through its capi [4]. PyPy has a c api, but it is "slow" and not JIT friendly. Some of us thought it would be fun to reimplement the core numpy ndarray as a first-class PyPy object, and allow the JIT to work its magic. We are 90% of the way there, which means we only have 90% of the effort left to do.
Most of the basic stuff works, significantly missing are SIMD optimizations and lazy expression evaluation.
Unfortunately, much scientific python software is written using the cpython capi, so it will require quite a bit of retooling of things like scipy [5] for the implementation of numpy on pypy to become popular.
[1] http://pypy.org [2] http://speed.pypy.org [3] http://python.org [4] http://docs.python.org/2/c-api [5] http://www.scipy.org/
Excellent, thanks much for the response!