Have Win DMD use gmake instead of a separate DMMake makefile?

bearophile bearophileHUGS at lycos.com
Sun Aug 11 15:40:07 PDT 2013


Walter Bright:

> as soon as the D *package* starts to depend on 
> non-default-installed libraries, trouble happens. With libcurl, 
> the only solution so far seems to be to BUILD OUR OWN LIBCURL 
> binary!
>
> http://d.puremagic.com/issues/show_bug.cgi?id=10710
>
> This is a terrible situation.

For Haskell they release two different kinds of 
compilers+libraries: one is just a core distribution with the 
compiler with the standard Haskell modules (including the GMP 
compiled binaries), and the other contains the compiler with its 
standard library, plus modules+binaries for the most common 
libraries.

Python on Windows uses a similar strategy.


> Consider things like the trig functions. D started out by 
> forwarding to the C versions. Unfortunately, the C versions are 
> of spotty, unreliable quality (even today!). Because of that, 
> we've been switching to our own implementations.
>
> And, consider that using GMP means CTFE would not be supported.

At the moment BigInt doesn't run at compile-time.

You could wrap an external fast multi-precision library in Phobos 
D code that uses __ctfw to switch to a simpler pure D 
implementation at compile-time.

Is it useful to use BigInts at compile-time? If the answer is 
very positive then perhaps the D interpreter could be modified to 
allow calling external numerical libraries even at compile-time.


> Note that D was developed with existing backends and linkers.

But isn't optlink being rewritten in C? Perhaps I am just 
confused, sorry.

Bye,
bearophile


More information about the Digitalmars-d mailing list