D vs. C#

Dave Dave_member at pathlink.com
Thu Nov 23 21:05:14 PST 2006


Ary Manzana wrote:
> Frank Benoit (keinfarbton) escribió:
>> Antonio,
>> the points you listed are very good. Well "good" because I know nothing
>> about C#, and this is also true for the things around C# and Dot NET.
>> First time I hear about those "rules".
>>
>> What do you think if you put the focus on the languages itself? Ignoring
>> existing libs, IDEs ...
> 
> I think this days a language isn't just "the language", i.e.: the 
> syntaxis and semantic.
> 
> Questions I want to ask to a language:
> 1. Does it have a great power of expresiveness?
> 2. Will I have to program all the *so common* classes like collections, 
> io, network, etc., or instead of focusing on my problem I'll have to 
> invent the wheel again?
> 3. Will I get my job done quickly?
> 4. Will my programs require some other annoying frameworks, virtual 
> machines and on on the target machine?
> 5. Will my programs be fast?
> 
> My answers would be:
> 1. Yes, and I think it beats C#, although reflection is widely used 
> nowadays, and D dosen't have this (I don't know if this is possible for 
> a compiled-to-native language).
> 2. Well, you'll surely find some good libraries out there. But 
> integration with other systems that use some other libraries will be 
> very painful. And choosing a library is also some time you'll loose. If 
> interfaces (like the ones in java.util) are defined in D, together with 
> a good core library, everything should be easier to do. But I think 
> interfaces are not that efficient in D... am I wrong? And yes, you'll 
> feel that poor performance in your 2Ghz double core processor.

I don't think D interfaces would have any less performance potential than any other language using 
interfaces (or even C++ MI)? The one big advantage for D is that the methods would already be 
compiled, so when you 'traverse' an object hierarchy the JIT wouldn't need to be (re)run for each 
method.

> 3. Not as quick as programming in C# or Java, because you don't have 
> powerful IDEs, and point 2 is also a thing to consider.
> 4. No, and it's one of the things I like most of D: a great power of 
> expressiveness compiled to native binaries.
> 5. Yes, very fast, and that's another point for D.
> 
> But, as far as I know, speed is not (that much) a concern, and everybody 
> has a virtual machine, so...

I agree except for this last point - C and C++ are still so popular in large part because of 
performance. D needs to at least meet C/++ and exceed Java and C# for it to succeed.



More information about the Digitalmars-d mailing list