<div dir="ltr">On 4 June 2013 02:59, Andrei Alexandrescu <span dir="ltr"><<a href="mailto:SeeWebsiteForEmail@erdani.org" target="_blank">SeeWebsiteForEmail@erdani.org</a>></span> wrote:<br><div class="gmail_extra"><div class="gmail_quote">
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="im">On 6/3/13 12:25 PM, Manu wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
You won't break every single method, they already went through that<br>
recently when override was made a requirement.<br>
It will only break the base declarations, which are far less numerous.<br>
</blockquote>
<br></div>
That's what I meant.<div class="im"><br>
<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
How can you justify the change to 'override' with a position like that?<br>
We have already discussed that we know PRECISELY the magnitude of<br>
breakage that will occur.<br>
It is: magnitude_of_breakage_from_<u></u>override /<br>
total_number_of_derived_<u></u>classes. A much smaller number than the breakage<br>
which was gladly accepted recently.<br>
</blockquote>
<br></div>
Well it's kinda too much relativism that the number of breakages is considered small because it's smaller than another number.<div class="im"><br>
<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
And the matter is far from trivial.<br>
</blockquote>
<br></div>
It is trivial. To paraphrase a classic: "I'm not taking away your ability to make everything final, you can type 'final:' as much as you like."</blockquote><div><br></div><div style>You read my posts where I illustrate how going virtual is a one-way ride right?</div>
<div style>You can safely change to virtual, but you can't go from virtual back to final.</div><div style>Aside from the performance hazards, and the empirical evidence from watching C++ programmers use D, virtual-by-default has the dangerous potential to lock you in to an awkward situation where you can never safely make a change to fix something that should never have been that way in the first place.</div>
<div><br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="im">
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
In fact, if you think this is<br>
trivial, then how did the override change ever get accepted? That is<br>
most certainly trivial by contrast, and far more catastrophic in terms<br>
of breakage.<br>
</blockquote>
<br></div>
That's a completely different issue, so this part of the argument can be considered destroyed.</blockquote><div><br></div><div style>Rubbish. A similar set of considerations apply, and there's an awful lot more supporting this one in addition.</div>
</div></div></div>