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 choice between "full D" and "minimal D" is to add an option to make the linker strip druntime and Phobos' shared libraries (or any shared library, and it's 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 understand
(saving memory)?

And regarding the other goal, to help porting D to other platforms a stub druntime would be cleaner than a hackish compiler flag that
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, etc.

This *is* a lowest common denominator. And as such, the lowest common denominator is fully usable from code outside the subset.

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.

Reply via email to