[Numpy-discussion] Anyone have a well-tested SWIG-based C++ STL valarray <=> numpy.array typemap to share?
David M. Cooke
cookedm at physics.mcmaster.ca
Fri Sep 7 10:03:47 EDT 2007
Christopher Barker <Chris.Barker at noaa.gov> writes:
> Joris De Ridder wrote:
>> A related question, just out of curiosity: is there a technical
>> reason why Numpy has been coded in C rather than C++?
>
> There was a fair bit of discussion about this back when the numarray
> project started, which was a re-implementation of the original Numeric.
>
> IIRC, one of the drivers was that C++ support was still pretty
> inconsistent across compilers and OSs, particularly if you wanted to
> really get the advantages of C++, by using templates and the like.
>
> It was considered very important that the numpy code base be very portable.
One of the big problems has always been that the C++ application
binary interface (ABI) has historically not been all that stable: all
the C++ libraries your program used would have to be compiled by the
same version of the compiler. That includes Python. You couldn't
import an extension module written in C++ compiled with g++ 3.3, say,
at the same time as one compiled with g++ 4.0, and your Python would
have to been linked with the same version.
While the ABI issues (at least on Linux with GCC) are better now, it's
still something of a quagmire.
--
|>|\/|<
/--------------------------------------------------------------------------\
|David M. Cooke http://arbutus.physics.mcmaster.ca/dmc/
|cookedm at physics.mcmaster.ca
More information about the NumPy-Discussion
mailing list