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

Reply via email to