[Numpy-discussion] Time for beta1 of NumPy 1.0
Travis Oliphant
oliphant at ee.byu.edu
Fri Jun 30 14:13:19 EDT 2006
Jon,
Thanks for the great feedback. You make some really good points.
>
>
>Having {pointer + dimensions + strides + type} in the python core would
>be an incredible step forward - this is far more important than changing
>my python code to do functionally the same thing with numpy instead of
>Numeric.
>
Guido has always wanted consensus before putting things into Python. We
need to rally behind NumPy if we are going to get something of it's
infrastructure into Python itself.
>As author of a (fairly obscure) secondary dependency package it is not
>clear that this is right time to convert. I very much admire the
>matplotlib approach of using Numerix and see this as a better solution
>than switching (or indeed re-writing in java/c++ etc).
>
I disagree with this approach. It's fine for testing and for
transition, but it is a headache long term. You are basically
supporting three packages. The community is not large enough to do
that. I also think it leads people to consider adopting that approach
instead of just switching. I'm not particularly thrilled with
strategies that essentially promote the existence of three different
packages.
>However, looking
>into the matplotlib SVN I see:
>
>_image.cpp 2420 4 weeks cmoad applied Andrew Straw's
>numpy patch
>numerix/_sp_imports.py 2478 2 weeks teoliphant Make
>recent changes backward compatible with numpy 0.9.8
>numerix/linearalgebra/__init__.py 2474 2 weeks teoliphant
> Fix import error for new numpy
>
>While I didn't look at either the code or the diff the comments clearly
>read as: "DON'T SWITCH YET".
>
I don't understand why you interpret it that way? When I moved
old-style names to numpy.oldnumeric for SVN numpy, I needed to make sure
that matplotlib still works with numpy 0.9.8 (which has the old-style
names in the main location).
Why does this say "DON'T SWITCH"? If anything it should tell you that
we are conscious of trying to keep things working together and
compatible with current releases of NumPy.
>Get the basearray into the python core and
>for sure I will be using that, whatever it is called. I was tempted to
>switch to numarray in the past because of the nd_image, but I don't see
>that in numpy just yet?
>
>
It is in SciPy where it belongs (you can also install it as a separate
package). It builds and runs on top of NumPy just fine. In fact it was
the predecessor to the now fully-capable-but-in-need-of-more-testing
numarray C-API that is now in NumPy.
>I am very supportive of the work going on but have some technical
>concerns about switching. To pick some examples, it appears that
>numpy.lib.function_base.median makes a copy, sorts and picks the middle
>element.
>
I'm sure we need lots of improvements in the code-base. This has
always been true. We rely on the ability of contributors which doesn't
work well unless we have a lot of contributors which are hard to get
unless we consolidate around a single array package. Please contribute a
fix.
>single one routine out, I was also saddened to find both Numeric and
>numpy use double precision lapack routines for single precision
>arguments.
>
The point of numpy.linalg is to provide the functionality of Numeric not
extend it. This is because SciPy provides a much more capable linalg
sub-package that works with single and double precision. It sounds
like you want SciPy.
>For numpy to really be better than Numeric I would like to find
>algorithm selections according to the array dimensions and type.
>
These are good suggestions but for SciPy. The linear algebra in NumPy
is just for getting your feet wet and having access to basic
functionality.
>Getting
>the basearray type into the python core is the key - then it makes sense
>to get the best of breed algorithms working as you can rely on the
>basearray being around for many years to come.
>
>Please please please get basearray into the python core! How can we help
>with that?
>
>
There is a PEP in SVN (see the array interface link at
http://numeric.scipy.org) Karol Langner is a Google summer-of-code
student working on it this summer. I'm not sure how far he'll get, but
I'm hopeful.
I could spend more time on it, if I had funding to do it, but right now
I'm up against a wall.
Again, thanks for the feedback.
Best,
-Travis
More information about the NumPy-Discussion
mailing list