On 1/5/2012 1:16 AM, Manu wrote:
On 5 January 2012 03:06, Walter Bright <newshou...@digitalmars.com
<mailto:newshou...@digitalmars.com>> wrote:

    On 1/4/2012 4:30 PM, Sean Kelly wrote:

        If a library is written without consideration to what is virtual and 
what is
        not, its performance will be the least of your problems.


    I agree. Such is a massive failure in designing a polymorphic type, and the
    language can't help with that.


I don't follow.. how is someone failing (or forgetting) to type 'final' a
"massive design failure"? It's not a design failure, it's not even 'wrong'...
it's INEVITABLE.
And the language CAN help with that, by making expensive operations require
explicit declaration.


In any class design, one must decide which functions are overrideable and which are not. The language cannot do it for you; certainly not by switching around the default behavior.


> At least make a compiler flag so I can disable virtual-by-default for my project...?

I'm afraid that such a switch would have disastrous results, because it fundamentally alters the meaning of existing code.

Reply via email to