[Numpy-discussion] A pray from an end user of numeric python.

Travis Oliphant oliphant at ee.byu.edu
Thu Mar 17 13:39:57 EST 2005

Daehyok Shin wrote:

>As an end user for Numeric and then numarray, recently I was quite
>frustrated by the move for Numeric3. Shortly after I became familiar
>with Numeric several years ago, I jumped to numarray mainly because of
>its more flexible indexing scheme. And after quite investment to learn
>the new package, recently I heard a distant echo that a new library
>called Numeric3 will replace Numeric sooner or later, and then I see a
>lot of discussion to discuss about better design of the new package in
>this mailing list. Because I think some feedbacks from end users are
>needed in the discussion, I dare to send this email, in spite of my
>meager knowledge about programming.

Thank you, thank you for speaking up.  I am very interested in hearing 
from end users.  In fact,  I'm an "end-user" myself.  My real purpose in 
life is not to endlessly write array packages.  I want to get back to 
the many problems I'm working on that require real usage. 

All of us had meager-knowledge at one point or another.  Besides that, 
our supposed knowledge today may turn out to be useless tomorrow, so 
feel free to chime in any time with your opinions.  Lack of knowledge 
doesn't seem to stop me from voicing an opinion :-)

In my opinion, the more use-cases of arrays we see, the better design 
desicions can be made.  Ultimately, the fact the numarray split off from 
Numeric was that some people wanted some new features to Numeric and 
wanted to try some new design ideas.   Their efforts have led to a 
better understanding of what a good array object should be. 

>To gods in numeric programming of Python, I want to make clear one
>basic fact. Like me, numerous scientific and engineering end users
>using Python needs a SINGLE standard data model for numeric
>operations. Even in the case that the data model has some defects in
>its design, many end users may not care about them, if many numeric
>packages using the data model are available. In this aspect, in my
>opinion, the replacement of current standard array types in Python
>must gain the top priority.

I think we are all on the same page here.  The ONLY reason I'm spending 
any time on "Numeric3" at all is because currently we have two 
development directions.  One group of people is building on top of 
Numeric (scipy, for example),  while another group of people is building 
on top of Numarray (nd_image for example).   We are doing a lot of the 
same work and I hate to see the few resources we have wasted on split 

Replacing the standard array type in Python is a longer-term problem.  
We need to put our own house in order in order to make that happen.  
Many of us want to see a single array type be standard in Python as long 
as we are satisfied with it.  But, that is the problem currently.  The 
people that wrote numarray were not satisfied with Numeric.   
Unfortunately, some of us that are long-time users of Numeric have never 
been satisfied with numarray either (it has not been even close to a 
"drop-in" replacement for Numeric).

I think that most people who use arrays would be quite satisfied with 
Numeric today (with a few warts removed).  But, I do think that the 
numarray folks have identified some scalability issues that if we 
address them will mean the arraytype we come up with can have a longer 

>So, I pray to gods in numeric programming of Python. Please give us a
>single numeric array model. Please save a flock of sheep like me from
>wondering around Numeric, numarray, Numeric3, or maybe in future
>Numeric4, 5, 6 …. Hopefully, this pray will get some attention.

I think everybody involved wants this too.   I'm giving up a great deal 
of my time to make it happen, largely because I see a great need and a 
way for me to contribute to help it.  I am very interested in recruiting 
others to assist me.  So far, I've received a lot of supportive 
comments, but not much supporting code.   We have the momentum.  I think 
we can get this done, so that come June, there is no "split" aside from 
backward compatibility layers....

In my estimation the fastest way to bring the two development directions 
together is to merge the numarray features back into Numeric.  As I'm 
doing that, I want to make sure that the new design extensions are done 
correctly and not just a bad idea that nobody ever complained about.   
This has led to quite a few "side-trips" into dusty closets where we 
kept the wart-shavings of current usage.   Those "side-trips" have 
extended the effort some, but I have not lost sight of the goal.   I 
don't want "yet-another-implementation".  I want everybody involved to 
agree that a single package provides the basis for what people need.

Thanks again for your comments.  If you can help in any way (e.g.  
writing test scripts) then please chip in.


More information about the NumPy-Discussion mailing list