On Friday, 13 June 2014 at 20:29:46 UTC, deadalnix wrote:
On Friday, 13 June 2014 at 17:12:44 UTC, Steven Schveighoffer
wrote:
On Fri, 13 Jun 2014 12:49:32 -0400, Andrei Alexandrescu
<seewebsiteforem...@erdani.org> wrote:
Virtual by default will not change. Being able to negate the
"final:" label is nice to have but not a must. Adding a
keyword for that doesn't scale - it would mean we'd need to
add one keyword to undo each label.
To that end, I thought we were moving towards a more scalable
solution: like !final or final!false or final(false), which
could be nice for metaprogramming.
-Steve
Yes that was the decision, and with the advantage that the
parameter can be computed at compile time.
I honestly don't see this as a noticeable advantage, at least in
the case of final. Not to mention you could just use "static
if(dovirtual) { result ~= "final(false)"; }".