Choosing D over C++, Go, Rust, Swift
maik klein via Digitalmars-d
digitalmars-d at puremagic.com
Sun Jan 24 06:07:42 PST 2016
On Sunday, 24 January 2016 at 12:04:58 UTC, Dibyendu Majumdar
wrote:
> On Thursday, 14 January 2016 at 13:47:39 UTC, Dibyendu Majumdar
> wrote:
>> I wrote recently that I am looking at an alternative to C++
>> for a project currently being coded in C++. I am pleased to
>> say based on preliminary investigations I have chosen D over
>> Go, Rust, and Swift.
>
>> 1. D appears to give me all the power of C++ - and in
>> particular even greater power with templates.
>>
>> 2. D code is cleaner, more traditional (Java and C like), and
>> easier to read and understand than some of the alternatives.
>> Go is simpler of course and also easy to follow - but that is
>> because it is a small language. I dislike the new syntax of
>> Rust as it seems gratuitously different and (in my view) hard
>> to read.
>>
>> 3. D gives me all the low level control while at the same time
>> giving me the ability to write code at a higher level. C++ is
>> similar but the other languages are all restrictive in some
>> way or other.
>>
>
> Hi - just to give you an update. After trying to get some
> simple tests working for the past few days I have concluded
> that while D is the best choice for my project (after C++) -
> D's implementation and tooling is not mature enough yet for me
> to spend effort on a port. So I will defer the move to D to a
> future time - but my intention is to do other work in D related
> to my OpenSource projects around Lua.
>
> I really want to use D as a better C / C++ so am looking
> forward to library developments that better support a style of
> programming that relies less on GC. Its not that I don't like
> GC - but I feel that the reasons for my using a language like D
> or C++ is control - else I would use Java or Swift or Go.
>
> Regards
> Dibyendu
I am in a similar boat, I don't need the GC at all and there is
not much stuff in the std to support a programming style like in
C++. Also I already run into a couple of bugs in the std which I
am currently trying to fix or work around. It is quite annoying.
But it is still the best bet if you want to do any
metaprogramming, I think I have tried all statically compiled
languages so far and nothing really comes close to what C++ can
do. But D even improves on C++'s metaprogramming and it compiles
so much faster.
Actually I personally came to the conclusion that C++ is kinda
useless for metaprogramming because the compile times will
explode very quickly.
A small entity component system with compile time filtering that
I have written in C++ takes around 15 seconds for a toy example.
In D it is ~1sec and the number doesn't seem go go up at all.
More information about the Digitalmars-d
mailing list