[Numpy-discussion] numpy release

Timothy Hochberg tim.hochberg@ieee....
Wed Apr 23 21:16:35 CDT 2008


[CHOP]

The proposals thus far don't address two of the major issues I have with the
matrix class:

   1. The matrices and arrays should become more alike if possible and
   should share more of the same code base. From what I've seen, the people who
   write the code (for numpy) don't actually use matrices, they use the arrays.
   This is one of the main reasons matrices still have so many problems IMO; if
   one of the main developers were using them, they'd never have put up with
   it. This may be changing to some extent now, but the more we can make
   matrices and arrays share code and interface, the happier we'll be. None of
   the new rules strike me as helping in this arena and may in fact hurt.
   Again, IMO.
   2. This doesn't support the concept of arrays of matrices/vectors, which
   is one thing I've always wanted out of the matrix class. For example it
   would be nice to be able to spell: 'A' is a 1D array of matrices (3D)
   overall, 'B' is a 1D array of vectors (3D) overall, matrix multiply them
   together, yielding a 1D array of matrices (3D) overall. I have frequently
   run into various permutations of this problem. You can fake it with loops
   over dot, but the efficiency is very bad for small arrays, plus it's ugly.

I have lot's of vague ideas on this subject that have been floating around
my head for the past couple of years. Basically, I think the way to go is to
probably add some meta information to arrays that make them look a little
bit more like tensors. Then, if one is careful (and things work out as I
hope) matrices could be implemented as a thin layer on top of arrays. Or
perhaps, if we are very lucky, done away with altogether.

Anyway, that's all very vague and hand-wavey; if I can spring free some
time, I'll try to write something up in the not too distant future. I'm glad
to see that any major changes are being put off for a while: I think we
should be able to do better than just patch up the old matrix class.

-tim
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://projects.scipy.org/pipermail/numpy-discussion/attachments/20080423/c2911fbd/attachment.html 


More information about the Numpy-discussion mailing list