Program size, linking matter, and static this()

Andrei Alexandrescu SeeWebsiteForEmail at erdani.org
Fri Dec 16 15:02:05 PST 2011


On 12/16/11 4:55 PM, Sean Kelly wrote:
> On Dec 16, 2011, at 12:44 PM, Andrei Alexandrescu wrote:
>>
>> Consider scope. Many arguments applicable to application code are
>> not quite fit for the standard library. The stdlib is the
>> connection between the compiler innards, the runtime innards, and
>> the OS innards all meet, and the role of the stdlib is to provide
>> nice abstractions to client code. Inside the stdlib it's entirely
>> expected to find things like __traits most nobody heard of, casts,
>> and other things that would be normally shunned in application
>> code. I'd be more worried if there was no possibility to do what we
>> need to do. The standard library is not a place to play it nice. We
>> can't afford to say "well yeah everyone's binary is bloated and
>> slower to start but we didn't like the cast that would have taken
>> care of that".
>
> I think this is a reasonable assertion about druntime, but the
> standard library itself should require very little black magic,

"Very little" sounds almost enough :o).

> though the use of obscure features (like __traits) could be
> commonplace.

Absolutely.


Andrei


More information about the Digitalmars-d mailing list