<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">On 2 December 2013 19:33, Dejan Lekic <span dir="ltr"><<a href="mailto:dejan.lekic@gmail.com" target="_blank">dejan.lekic@gmail.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="im">On Friday, 29 November 2013 at 13:44:10 UTC, Manu wrote:<br>
</div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="im">
* ARC<br>
* rvalue -> ref<br>
* virtual-by-default<br>
* GC improvements<br>
* AA fixes<br>
<br>
<br></div><div class="im">
On 29 November 2013 07:01, Fra <<a href="mailto:Fra@b.it" target="_blank">Fra@b.it</a>> wrote:<br>
<br>
</div><div><div class="h5"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Personally I would love to see this old issue finally implemented/fixed:<br>
There can be only one alias this.<br>
<a href="https://d.puremagic.com/issues/show_bug.cgi?id=6083" target="_blank">https://d.puremagic.com/<u></u>issues/show_bug.cgi?id=6083</a><br>
<br>
What would your choice be?<br>
</blockquote></div></div></blockquote>
<br>
I hope virtual-by-default never gets approved. I read DIP51 and quite frankly I am not convinced at all. It is basically "I do not want to put final in front of my methods. Well, I do not want to put virtual in front of my methods... But this is perhaps something for another discussion...<br>
</blockquote></div><br></div><div class="gmail_extra">There's been endless discussions on the topic. There was a link to a thread with loads of discussion.</div><div class="gmail_extra">The problem is that virtual is irrevocable. It can't be removed without breaking the API, which means it's not possible to optimise a library in that way at any time after it has already been released to the wild. The converse is not true.</div>
<div class="gmail_extra">It has also been agreed that there is very little the compiler/optimiser can do to help.</div><div class="gmail_extra">It's a dangerous default, it's got absolutely nothing to do with "I don't want to type final" as you helpfully simplified it. You can type 'virtual:' at the top, and you're set. Again, the converse doesn't stand, you can't practically type 'final:' at the top since there will inevitable by SOME virtual methods.</div>
<div class="gmail_extra"><br></div><div class="gmail_extra">We can spin off another thread if you like, or you can read through the old ones. I don't think it's going to go any further than the other threads already did.</div>
</div>