System programming in D (Was: The God Language)
Walter Bright
newshound2 at digitalmars.com
Thu Jan 5 12:37:51 PST 2012
On 1/5/2012 1:16 AM, Manu wrote:
> On 5 January 2012 03:06, Walter Bright <newshound2 at digitalmars.com
> <mailto:newshound2 at 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.
More information about the Digitalmars-d
mailing list