[Numpy-discussion] Re: Trying out Numeric3

Travis Oliphant oliphant at ee.byu.edu
Tue Mar 22 23:18:58 EST 2005

>>> Do 4 gigabyte 1D numerical python arrays occur in practice? If I 
>>> understand correctly, the current implementation gives dimensions a 
>>> different pointer type on different platforms. This will break 
>>> extension modules on platforms other than 32-bits, as the extension 
>>> module expects dimensions to be a pointer to int.
>> This is a must have.   Yes, extension modules will have to be 
>> recompiled and pointers changed on 64-bit platforms,  but this has to 
>> be done.      
> Why? There needs to be a good reason to break compatibility. Who needs 
> this?

> --Michiel.

The "break compatibility argument" is not strong for me here.  We are 
going to break compatibility in a few places.    I'm trying to minimize 
them, but I don't want to chain ourselves to bad designs forever just 
for the sake of compatibility.

For 32-bit systems there will be no problem, unchanged extension code 
will work fine.
Unchanged extension code will not work on 64-bit systems.  The change is 
not difficult (search and replace).  I submit that there are fewer 
64-bit users out there currently, but they are going to grow, and will 
eventually find Numeric a toy if the dimensions are limited to 32-bits 
even on 64-bit systems.   The biggest problem is the 1 dimensional 
array.  Here the 32-bit limit will byte you quickly.


More information about the NumPy-Discussion mailing list