H1 2015 Priorities and Bare-Metal Programming
Dicebot via Digitalmars-d
digitalmars-d at puremagic.com
Tue Feb 3 10:38:13 PST 2015
On Tuesday, 3 February 2015 at 18:16:20 UTC, Andrei Alexandrescu
wrote:
> I think the best route here - and the most in-the-spirit-of-D -
> is to provide introspection on whether a function is being
> inlined or not. Then we can always have in libraries:
>
> bool uart(ubyte b)
> {
> static assert(__traits(inlined),
> "Inlining of uart() must be supported.");
> ...
> }
That is tempting path but I feel that it creates new issues for
little benefit.
Consider:
bool uart(ubyte b)
{
static if(__traits(inlined))
{
// do something that can't be inlined
}
else
{
// do something that can be inlined
}
}
And http://wiki.dlang.org/DIP56 is still needed for other
purposes - so why create new brittle abstractions when it is
possible to use existing dumb ones?
More information about the Digitalmars-d
mailing list