[Numpy-discussion] PEP 242 Numeric kinds

Chris Barker Chris.Barker at noaa.gov
Fri Dec 6 10:10:04 EST 2002

José Fonseca wrote:
> to say that the manipulation of numeric
> arrays is only of interest to scientific programmers is the same of when
> in the early computing days engineers saing that computers would only be
> good for crunching numbers, and that the concept of personal computers
> was just non-sense...

I absolutely concur.
> For a non-scientic usage of Numeric see the examples in
> http://www.pygame.org/pcr/repository.php, but I can imagine the
> usefullness of Numeric in many more non-scientific applications:
> imaging, sound visualization plugins, 3D graphics, and probably much
> more.

It goes MUCH farther than this. All these examples are what I would call
serious number crunching. Perhaps not strictly scientific, but certainly
the realm of numeric programming, and all places where the "kinds"
concept would be useful.

However, there is a great deal of usefulness in Numeric for applications
that are not doing a lot of number crunching. Performance is only one
reason to use Numeric. The other reason is much cleaner and easier
syntax for manipulating arrays of numbers, especially ones of more than
one dimension. Being able to slice across multiple dimensions, array
oriented arithmetic, overloaded comparisons, etc. I use Numeric for
virtually every program I write, whether performance is an issue or not.
Not having to write all those ugly, confusing and error prone loops is a

All that being said, the "kinds" concept is probably mostly of concern
to the Number crunching community. However, it is also sort of a low
level concept, and having it part of core language makes sense, just
like it makes sense to have complex number and long integers in the core


Christopher Barker, Ph.D.
NOAA/OR&R/HAZMAT         (206) 526-6959   voice
7600 Sand Point Way NE   (206) 526-6329   fax
Seattle, WA  98115       (206) 526-6317   main reception

Chris.Barker at noaa.gov

More information about the NumPy-Discussion mailing list