[OT] Modules dropped out of C++17
via Digitalmars-d
digitalmars-d at puremagic.com
Tue Jun 9 04:25:24 PDT 2015
On Tuesday, 9 June 2015 at 10:48:22 UTC, Marc Schütz wrote:
> static assert() is your friend in this case. See also the
> related problem of guaranteeing that a template is
When constexpr is part of the prototype you know that it isn't
supposed to do substantial work.
Without it, you risk the compiler spending a lot of time
computing constants/tables that should be done at runtime to save
compile time and object code size. And since C++ programmers
expect that level of control, it would have ended up as a pragma
if it was not part of the language?
Not saying one way is obviously better than the other. I think
LLVM (and all the open source starting points available) paves
the way for performant high level languages by reducing the cost
of building a backend. Maybe in some unexpected direction that
fits next-gen hardware better than C-descendants.
More information about the Digitalmars-d
mailing list