This is the mail archive of the libstdc++@gcc.gnu.org mailing list for the libstdc++ project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

FW: Special functions in TR1



-----Original Message-----
?
All,
?
I was looking through the TR1 draft and the Section 5.2 special functions
caught my eye.? These special functions include most of the functions
familiar in mathematical physics and engineering: Bessel functions, Legendre
polynomials, Hermite polynomials, etc. ?(Oh, the memories...) ?The TR1 draft
specifies that each function (there are 23 of them) should have float,
double, and long double variants.? This is a big chunk of work and it would
be daunting to create these from scratch.
?
However, there is Gnu project called the Gnu Scientific Library that has all
these functions in it (double precision only) and is fairly mature.
?
There are a number of issues pro, con, and neither here nor there to using
the GSL:
?
1. The GSL is large - the special functions are only a small part of the
whole library.? We might want to disentangle the special functions from the
rest.? That might be hard or not.
2. Adding the whole GSL as another library dependence might be more trouble
than people want to deal with.
3. The GSL only has double precision variants. ?We could cast variables but
there could well be differences in how things are computed and it's a waste
for float and a loss of accuracy for long double.? We could cook our own.?
We could get/help the GSL people expand to the other numeric types.
4. I don't think we want to forget the GSL heritage because we might
find/fix bugs or they might find/fix bugs and we'd like to sync back up
periodically
5. The GSL is in C.? I suspect that it would compile with C++ but I don't
know.
6. The GSL methods and variables should probably not be in the global
namespace - we would want to put them into a namespace that wouldn't collide
or be visible: std::tr1::__gsl?
?
Questions:
Where does one get the forms for Copyright assignment?? I looked around but
couldn't find them.
Is anyone else thinking about this?
Do any other language front ends (gfortran) need these functions?
?
Ed Smith-Rowland


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]