Why I chose D over Ada and Eiffel

Ramon spam at thanks.no
Sun Aug 25 16:41:46 PDT 2013


On Sunday, 25 August 2013 at 23:00:21 UTC, bearophile wrote:
> Ramon:
>
>> As for language comparisons or shoot outs, I don't care that
>> much.
>
> In your first post of this thread you have listed some things 
> you like, some things you don't like, listed points (Arrays, 
> Strings, DBC, modern concurrency, GUI, "defer mechanism", 
> Genericity) you have even assigned points. So while you have 
> not written a direct language comparison, you have analysed 
> specific points. In my answer I've given example that shows why 
> Ada has still something good to offer that's lacking in D. 
> Language comparisons can be sterile, or they can be a chance to 
> learn.
>

I think we have a misunderstanding here. I'm *not* against Ada 
and I think that, of course, comparing languages to a degree is a 
good thing and sometimes a necessity.

I just don't think that slocs or "language A does it in x ms 
while language B needs y ms" does tell me a lot about a language.

Referring to Walter Bright in part, I see that the major problem 
with server software usually is *not* performance but reliability 
and safety. Furthermore usually the game is influenced by quite 
different factors such as the concurreny model chosen. You might 
well end up having some Lua (interpreted!) server beating the 
sh*t out of apache (C/C++) simply because the former uses, say, 
libevent based AIO while the latter uses processes.

*That* actually was a major criterion for me (I happen to work a 
lot in the server world): I wanted a language that offers a sound 
and elegant "multitask" implementation (à la Ada) as well as 
*easy* and comfortable access to AIO (which  e.g. in Eiffel 
carries a considerable performance penalty by using the agent 
model).

When I discovered vibe.d I smiled and thought "Of course! It 
comes almost naturally for a D guy to implement that". What a 
nice proof of D's capabilities.



More information about the Digitalmars-d mailing list