View mode: basic / threaded / horizontal-split · Log in · Help
July 28, 2005
Are there any floating point libraries for D?
Hello -
I'm just starting to explore D. I have a particular interest in floating point
calculations, which D seems to have superb language support for.
But I have not been able to find any libraries which take advantage of this
support. (In fact even C99 libraries seem to be rare on the web).
Am I correct in believing that this incredible potential is almost completely
untapped at present? What is out there so far?

Cheers,
Don.
July 28, 2005
Re: Are there any floating point libraries for D?
"Don Clugston" <Don_member@pathlink.com> wrote in message 
news:dc9g60$13ae$1@digitaldaemon.com...
> Hello -
> I'm just starting to explore D. I have a particular interest in floating 
> point
> calculations, which D seems to have superb language support for.
> But I have not been able to find any libraries which take advantage of 
> this
> support. (In fact even C99 libraries seem to be rare on the web).
> Am I correct in believing that this incredible potential is almost 
> completely
> untapped at present? What is out there so far?
>
> Cheers,
> Don.

What sort of functionality are you looking for? Something like LAPACK or 
Blitz?
There's a proposal for better multi-dimensional array support by Norbert 
Nemec (see for example 
http://www.digitalmars.com/d/archives/digitalmars/D/3223.html) but I'm not 
aware of any D-specific libraries. A (not-so-complete) list of libraries is 
at http://www.prowiki.org/wiki4d/wiki.cgi?AllLibraries
July 29, 2005
Re: Are there any floating point libraries for D?
In article <dcai9k$1se8$1@digitaldaemon.com>, Ben Hinkle says...
>"Don Clugston" <Don_member@pathlink.com> wrote in message 
>news:dc9g60$13ae$1@digitaldaemon.com...
>> Hello -
>> I'm just starting to explore D. I have a particular interest in floating 
>> point
>> calculations, which D seems to have superb language support for.
>> But I have not been able to find any libraries which take advantage of 
>> this
>> support. (In fact even C99 libraries seem to be rare on the web).
>> Am I correct in believing that this incredible potential is almost 
>> completely
>> untapped at present? What is out there so far?
>>
>> Cheers,
>> Don.
>
>What sort of functionality are you looking for? Something like LAPACK or 
>Blitz?

Anything, really. It seems that Phobos doesn't even have the most trivial
functions for complex numbers -- eg. exp(creal x).
The combination of built-in support for 80-bit imaginary numbers, NCEG
operators, unit tests, and the template features could easily make D the most
robust (and fast) language for computation. I'm a research scientist/engineer,
with a significant experience of x86 FP assembler and modern C++, so I believe I
could make a contribution in this area. I just want to make sure that I wouldn't
be reinventing the wheel.

>There's a proposal for better multi-dimensional array support by Norbert 
>Nemec (see for example 
>http://www.digitalmars.com/d/archives/digitalmars/D/3223.html)

That is truly awesome! It does caution me against doing much matrix work, though
-- that proposal would render a lot of code obselete.

but I'm not 
>aware of any D-specific libraries. A (not-so-complete) list of libraries is 
>at http://www.prowiki.org/wiki4d/wiki.cgi?AllLibraries

It looks very easy to find something that hasn't already been done :)
Maybe I can write std.complex.d
July 29, 2005
Re: Are there any floating point libraries for D?
[snip]
> It seems that Phobos doesn't even have the most trivial
> functions for complex numbers -- eg. exp(creal x).
> The combination of built-in support for 80-bit imaginary numbers, NCEG
> operators, unit tests, and the template features could easily make D the 
> most
> robust (and fast) language for computation. I'm a research 
> scientist/engineer,
> with a significant experience of x86 FP assembler and modern C++, so I 
> believe I
> could make a contribution in this area. I just want to make sure that I 
> wouldn't
> be reinventing the wheel.

Welcome - it's great to have people interested in numerics. Things are 
pretty quiet right now over the summer but we have gotten some good threads 
on number-crunching in the past.

>>There's a proposal for better multi-dimensional array support by Norbert
>>Nemec (see for example
>>http://www.digitalmars.com/d/archives/digitalmars/D/3223.html)
>
> That is truly awesome! It does caution me against doing much matrix work, 
> though
> -- that proposal would render a lot of code obselete.

True - I think there have been several vector/matrix modules coded up (2 and 
3 dim mostly). I don't have any links handy, though.

> but I'm not
>>aware of any D-specific libraries. A (not-so-complete) list of libraries 
>>is
>>at http://www.prowiki.org/wiki4d/wiki.cgi?AllLibraries
>
> It looks very easy to find something that hasn't already been done :)
> Maybe I can write std.complex.d

Go for it. I'm sure it will be appreciated. It is pretty common to request 
at dsource if you need a host and forum. The url is http://www.dsource.org - 
ask for Brad :-)
Or if you are planning something somewhat small like a single module for std 
(as you suggest) then the typical approach is to post some ideas or post 
some code and have people comment and then send it to Walter. You can also 
just email Walter to get his opinion on the whole thing but be aware he's 
out right now.
July 29, 2005
Re: Are there any floating point libraries for D?
In article <dcbsvs$8em$1@digitaldaemon.com>, Don Clugston says...
>
>In article <dcai9k$1se8$1@digitaldaemon.com>, Ben Hinkle says...
>>
>>What sort of functionality are you looking for? Something like LAPACK or 
>>Blitz?
>
>Anything, really. It seems that Phobos doesn't even have the most trivial
>functions for complex numbers -- eg. exp(creal x).

For what it's worth, I've exposed all the standard C routines that DMD supports
(that being all of them) for complex mathematics.  Links are here:

http://svn.dsource.org/projects/ares/trunk/src/ares/std/c/complex.d
http://svn.dsource.org/projects/ares/trunk/src/ares/std/c/math.d

>The combination of built-in support for 80-bit imaginary numbers, NCEG
>operators, unit tests, and the template features could easily make D the most
>robust (and fast) language for computation. I'm a research scientist/engineer,
>with a significant experience of x86 FP assembler and modern C++, so I believe I
>could make a contribution in this area. I just want to make sure that I wouldn't
>be reinventing the wheel.

Definately not.  And it would be great to have a solid numeric library for D.


Sean
July 31, 2005
Re: Are there any floating point libraries for D?
Don Clugston <Don_member@pathlink.com> wrote:

> It looks very easy to find something that hasn't already been
> done :) Maybe I can write std.complex.d

An it is as easy to overlook, that there are already processor 
specific libraries available.

For the Athlon 64 AMD has released "AMD Core Math Library (ACML)" 
with versions of BLAS, LAPACK etc. and a C interface to them.
Therefore al that has to be done is to convert the headerfile to D.

-manfred
Top | Discussion index | About this forum | D home