[Python-Dev] Expose the array interface in Python 2.5?

Edward C. Jones edcjones at comcast.net
Fri Mar 17 20:10:47 CET 2006


"Travis E. Oliphant" <oliphant.travis at ieee.org> wrote:

 > It is very important for many people to get access to memory with some
 > description of how that memory should be interpreted as an array.
 > Several Python packages could benefit if Python had some notion of an
 > array interface that was at least supported in a duck-typing fashion.

Which packages? Which people? Which constituencies?

"Travis E. Oliphant" <oliphant.travis at ieee.org> also wrote:

 > My big quest is to get PIL, PyVox, WxPython, PyOpenGL, and so forth to
 > be able to use the same interface.  Blessing the interface by
 > including it in the Python core would help.  I'm also just wanting
 > people in py-dev to get the concept of an array interface on their
 > radar, as discussions of new bytes types emerges.

I use PIL and numarray a lot. It would be nice if they used a common 
array format so I would not need to convert back and forth. But I 
survive quite well with the current arrangement.

Many other packages besides PIL and Numeric / numarray / Numpy are 
involved here: byte, struct, ctypes, SWIG, PyTables, Psyco, PyPy, Pyrex, 
etc. There are some major issues that need to be dealt with which I will 
state concisely in an abstract way.

A data structure without an API and thorough documentation is useless. 
Any proposal needs to include them from the very start.

How should Python interact with low level data? By "low level data" I 
mean data as seen by C, C++, and FORTRAN as well as linear arrays of bytes.

What changes in Python would make the packages listed above easier to 
write and use? Easier enough to write that the package owners would be 
willing to give up control of part of their packages.

Does anyone know of any academic-type papers that have been written in 
the last few years on these matters?


More information about the Python-Dev mailing list