[SciPy-dev] Bessel functions from Boost

Robert Kern robert.kern at gmail.com
Sun Feb 8 19:28:45 EST 2009


On Sun, Feb 8, 2009 at 18:12, Ondrej Certik <ondrej at certik.cz> wrote:
> Hi,
>
> On Sun, Feb 8, 2009 at 10:58 AM, Michael Abshoff
> <michael.abshoff at googlemail.com> wrote:
>> Pauli Virtanen wrote:
>>
>> Hi,
>>
>>> Sun, 08 Feb 2009 18:25:32 +0100, Matthieu Brucher wrote:
>>>
>>>>> The only problem is that being in Boost, they are written in C++, and I
>>>>> guess we can't make Scipy to depend on it.
>>>> The sparse module is already based on C+, so why not more ?
>>>
>>> The problem is not C++ per se, but Boost:
>>>
>>> (i) How much of it we need to bundle with Scipy?
>>> (ii) Are there portability/build issues?
>>
>> Boost is a neverending souce of portability/build issues and every
>> project I ever touched using boost had specific version requirements,
>> i.e PuCUDA wanted either one of two speccfic release while quantlib
>> wanted another set, but in between them there wasn't any boost that
>> worked for both of them. Putting that code in-tree opens you up to all
>> kinds of version mismatches and confusion if boost is installed system
>> wide.
>>
>> I have had to fix or work around issues with recent boost on common
>> platforms like OSX, much less seemingly "exotic" things like FreeBSD :),
>> boost has its own build system (jam) which isn't exactly used commonly
>> anywhere else and quite painful, i.e. boost always used the global
>> Python headers for quantlib for example and you need either the latest
>> release or some snapshot to work around that bug. Boost code requires
>> beefy resources to compile and on and on an on. Please do not touch
>> boost code, but if you must either translate C code or look at some
>> alternative like mpmath, i.e.
>>
>>   http://code.google.com/p/mpmath/
>>
>> Fredrick is quite responsive about bugs and feature requests and we have
>> talked to him about replacing some of the functionality provided by
>> cephes in Sage via mpmath since they are arbitrary precision and pretty
>> fast when optionally using gmp. But it also works in pure mode, i.e. all
>> BSD licensed code.
>
> I completely agree with Michael here. Why not to use mpmath? It's bsd,
> it started as part of sympy and it was the GSoC project for sympy the
> last year. It's pretty competitive with gmp (e.g. for the pi digits
> calculations, it's even faster than Sage, unless Sage fixed that
> already), but one doesn't have to use gmp, if one doesn't want to.
>
> And I think both Fredrik and other mpmath and sympy developers would
> help to make mpmath working with scipy. Definitely I would. I think
> that's a better option, than to port some boost stuff and then you
> would have to maintain it. If you use mpmath, all of us win, imho.

??? For implementing a C ufunc?

-- 
Robert Kern

"I have come to believe that the whole world is an enigma, a harmless
enigma that is made terrible by our own mad attempt to interpret it as
though it had an underlying truth."
  -- Umberto Eco



More information about the SciPy-Dev mailing list