[Numpy-discussion] [EXTERNAL] Re: numpy.i and std::complex
wfspotz at sandia.gov
Mon Oct 27 12:24:59 EDT 2014
Oops, I meant '"Cython" is its own language,' not "Python" (although Python qualifies, too, just not in context).
Also, Pyrex, listed in the c-info.python-as-glue.html page, was the pre-cursor to Cython.
On Oct 27, 2014, at 10:20 AM, Bill Spotz <wfspotz at sandia.gov> wrote:
> Python is its own language, but it allows you to import C and C++ code, thus creating an interface to these languages. Just as with SWIG, you would import a module written in Cython that gives you access to underlying C/C++ code.
> Cython is very nice for a lot of applications, but it is not the best tool for every job of designing an interface. SWIG is still preferable if you have a large existing code base to wrap or if you want to support more target languages than just Python. I have a specific need for cross-language polymorphism, and SWIG is much better at that than Cython is. It all depends.
> Looks like somebody needs to update the c-info.python-as-glue.html page.
> On Oct 27, 2014, at 10:04 AM, Glen Mabey <gmabey at swri.org> wrote:
>> On Oct 27, 2014, at 10:45 AM, Sturla Molden <sturla.molden at gmail.com>
>>> Glen Mabey <gmabey at swri.org> wrote:
>>>> I'd really like for this to be included alongside numpy.i -- but maybe I
>>>> overestimate the number of numpy users who use complex data (let your
>>>> voice be heard!) and who also end up using std::complex in C++ land.
>>> I don't think you do. But perhaps you overestimate the number of NumPy
>>> users who use Swig?
>> Likely so.
>>> Cython seems to be the preferred wrapping tool today, and it understands
>>> complex numbers:
>>> cdef double complex J = 0.0 + 1j
>>> If you tell Cython to emit C++, this will result in code that uses
>> I chose swig after reviewing the options listed here, and I didn't see cython on the list:
>> I guess that's because cython is different language, right? So, if I want to interactively call C++ functions from say ipython, then is cython really an option?
>> Thanks for the feedback --
>> NumPy-Discussion mailing list
>> NumPy-Discussion at scipy.org
> ** Bill Spotz **
> ** Sandia National Laboratories Voice: (505)845-0170 **
> ** P.O. Box 5800 Fax: (505)284-0154 **
> ** Albuquerque, NM 87185-0370 Email: wfspotz at sandia.gov **
** Bill Spotz **
** Sandia National Laboratories Voice: (505)845-0170 **
** P.O. Box 5800 Fax: (505)284-0154 **
** Albuquerque, NM 87185-0370 Email: wfspotz at sandia.gov **
More information about the NumPy-Discussion