On Monday, 17 February 2014 at 06:40:54 UTC, Paulo Pinto wrote:
On Sunday, 16 February 2014 at 23:40:58 UTC, 1100110 wrote:
On 2/16/14, 10:18, Elie Morisse wrote:
IMHO an approach that would not involve making a binary
"full D" and "minimal D" is to add an option to make the
druntime and Phobos' shared libraries (or any shared library,
not specific to D btw) to the "lowest common denominator"
required by a
bunch of libraries and applications. Wouldn't that fulfill
one of the
two goals -nodruntime is trying to achieve as far as I
And regarding the other goal, to help porting D to other
stub druntime would be cleaner than a hackish compiler flag
requires many changes to DMD.
No. Any library compiled with -nogc will be 100% usable from
a program compiled without it. Same goes for -noexceptions,
This *is* a lowest common denominator. And as such, the
lowest common denominator is fully usable from code outside
All these do is error on whatever feature they are disabling.
However I doubt the other way around will work.
Linking all those nice D libraries developed with standard D
into minimal D.
But what do I know, I always enable everything in C++.
Note that you can disable rtti/exceptions etc in C++ (and in fact
we do that in all the companies that I have ever worked for since
around 2005). The feature is there because it's very useful.
This discussion is all about adding similar capabilities to D.