|
![](/i/fill.gif) |
Am 14.08.2012 10:40, schrieb Invisible:
>> Diamond inheritance isn't a problem if you don't have implementations.
>>
>> OK, so Thread declares void run(), and DistressedDamsel declares void
>> run(). Why would those declarations conflict?
>
> So if a class tries to implement both interfaces, it can't provide
> different implementations for these two distinct methods merely because
> their names clash?
Depends on the language. You could, for instance, have a syntax to
define a Thread::run() and a separate DistressedDamsel::run(); don't
know whether C# can do that though. Maybe, maybe not. I'd just make a
guess that Java can't do it.
> According to the Great Language Shootout, C# Mono is 3x slower than C.
> (Then again, Haskell is 2x slower...)
A factor of 3x compared to what is probably the fastest
more-or-less-high level language doesn't sound that bad to me, given how
much easier it is to program anything serious in it. (You don't want to
write a GUI program in C, do you?! You'd at least want C++)
>> Sure there is, because you recompile the code while it's running.
>
> That sounds remarkably hard to get right...
Ever heard of JIT-compilers?
All you need to do is mark the corresponding classes as not-yet-compiled
again.
Post a reply to this message
|
![](/i/fill.gif) |