Jump to page: 1 26  
Page
Thread overview
Why do C++ programmers are not interested in D?
Nov 19, 2019
Pavel Shkadzko
Nov 19, 2019
Dejan Lekic
Nov 19, 2019
Pavel Shkadzko
Nov 19, 2019
bachmeier
Nov 19, 2019
Russel Winder
Nov 19, 2019
bachmeier
Nov 20, 2019
Paulo Pinto
Nov 20, 2019
Paulo Pinto
Nov 20, 2019
Laeeth Isharc
Nov 22, 2019
Russel Winder
Nov 22, 2019
Paulo Pinto
Nov 23, 2019
Russel Winder
Nov 22, 2019
Russel Winder
Nov 19, 2019
Russel Winder
Nov 19, 2019
IGotD-
Nov 19, 2019
Newbie2019
Nov 19, 2019
JN
Nov 19, 2019
IGotD-
Nov 19, 2019
Newbie2019
Nov 19, 2019
Mark
Nov 19, 2019
Pavel Shkadzko
Nov 19, 2019
Mark
Nov 19, 2019
Ola Fosheim Gr
Nov 19, 2019
Ola Fosheim Gr
Nov 23, 2019
Timon Gehr
Nov 23, 2019
Mark
Nov 27, 2019
Gregor Mückl
Nov 20, 2019
Laeeth Isharc
Nov 20, 2019
jmh530
Nov 26, 2019
Laeeth isharc
Nov 27, 2019
Paolo Invernizzi
Nov 27, 2019
jmh530
Nov 20, 2019
IGotD-
Nov 20, 2019
IGotD-
Nov 20, 2019
Paulo Pinto
Nov 21, 2019
Ethan
Nov 22, 2019
Guillaume Piolat
Nov 24, 2019
Guillaume Piolat
Nov 24, 2019
Guillaume Piolat
Nov 24, 2019
Paulo Pinto
Nov 24, 2019
Jab
Nov 24, 2019
Paulo Pinto
Nov 24, 2019
Jab
Nov 25, 2019
Paulo Pinto
Nov 25, 2019
Jab
November 19, 2019
Sorry for "clickbaity" title but I believe it is discussion inducing.

This spring I started looking into D and trying it for some of the data analysis and scripting tasks. So, I am fairly new to the language and all its toolset (mainly using Python and Scala at work). I don't know C++. We do however have C++ engineers so I asked them around. I was quite surprised that none of them knew or even tried to use D. They of course heard about the language but that's it.

This Friday I also attended a PyTorch meetup in Munich at Microsoft where one of the core PyTorch developers (Adam Paszke) made a presentation about the future of this deep learning library. During presentation he mentioned that he played around with Hasktorch (a PyTorch inspired library in Haskell) to see how does PyTorch concepts go with functional style. When I approached him after the talk and asked if he ever thought of trying D for that purpose he looked surprised and confessed that he didn't know the language, heard about it yes but it never occurred to him to try and use it.

Having read about how D is a better C++ and trying it out, I have a feeling that it would be extremely easy for C++ devs to just start programming in it minutes away after getting to know its syntax. I saw it with my own eyes in one of the Munich meetups on D. But why are so few C++ devs actually do it remains a mystery to me. I would really like to stay away from the general discussion on why D is not as popular as other languages :) rather I'd ask around for C++ programmers who have tried D and share some positive experience they had so that I could spread the word.
November 19, 2019
On Tuesday, 19 November 2019 at 08:51:49 UTC, Pavel Shkadzko wrote:
> meetups on D. But why are so few C++ devs actually do it remains a mystery to me. I would really like to stay away from the general discussion on why D is not as popular as other languages :) rather I'd ask around for C++ programmers who have tried D and share some positive experience they had so that I could spread the word.

How did you come by this conclusion? - D community is full of C++ and ex-C++ programmers! I am a former full-time C++ developer who gained interest in D almost exactly 20 years ago. I use D whenever I need "native" executables on Linux.
November 19, 2019
On Tuesday, 19 November 2019 at 08:51:49 UTC, Pavel Shkadzko wrote:

> Having read about how D is a better C++

> But why are so few C++ devs actually do it remains a mystery to me.

Unfortunately, D is not a better C++. Most notably, it has a GC, and much of the functionality of the standard library has historically required using the GC. Second, it doesn't work with legacy C++ code. That's changing, but it's a big issue.

Having said that, D has massive appeal to someone like me, who needed to speed up my R programs but would rather change careers than write and maintain C++. If I had a large existing C++ codebase, I would not have moved to D either.
November 19, 2019
On Tuesday, 19 November 2019 at 09:12:02 UTC, Dejan Lekic wrote:
> On Tuesday, 19 November 2019 at 08:51:49 UTC, Pavel Shkadzko wrote:
>> meetups on D. But why are so few C++ devs actually do it remains a mystery to me. I would really like to stay away from the general discussion on why D is not as popular as other languages :) rather I'd ask around for C++ programmers who have tried D and share some positive experience they had so that I could spread the word.
>
> How did you come by this conclusion? - D community is full of C++ and ex-C++ programmers! I am a former full-time C++ developer who gained interest in D almost exactly 20 years ago. I use D whenever I need "native" executables on Linux.

The conclusion is based solely on my own observations as a language newbie. But what triggered me is that one of the PyTorch core C++ developers didn't even consider D although the language clearly fits nicely in the machine learning domain and has been proven to be used exactly for that (see Vectorflow, https://github.com/Netflix/vectorflow).

Let me just stress my concern that having a deep learning library for D these days would give it a huge boost in popularity as it once did for Lua, alas.
November 19, 2019
On Tue, 2019-11-19 at 08:51 +0000, Pavel Shkadzko via Digitalmars-d wrote:
> […]
> work). I don't know C++. We do however have C++ engineers so I
> asked them around. I was quite surprised that none of them knew
> or even tried to use D. They of course heard about the language
> but that's it.

Most C++ programmers work on C++ codebases and so are tied to improvements in C++ for any and all improvements in life.

That C++ has entered a 3 year standards cycle has solved many of the problems C++ had in terms of evolution, and so the idea of rewriting a C++ codebase to another language has gone out of the window – it was probably unlikely in most cases anyway for other reasons.

It is also worthy of note that the C++ community is far, far bigger than the D community. The social aspects of things have a big influence.

-- 
Russel.
===========================================
Dr Russel Winder      t: +44 20 7585 2200
41 Buckmaster Road    m: +44 7770 465 077
London SW11 1EN, UK   w: www.russel.org.uk



November 19, 2019
On Tue, 2019-11-19 at 09:28 +0000, bachmeier via Digitalmars-d wrote:
> 
[…]
> Unfortunately, D is not a better C++. Most notably, it has a GC, and much of the functionality of the standard library has historically required using the GC. Second, it doesn't work with legacy C++ code. That's changing, but it's a big issue.
[…]

That many C++ developers have an obsessive fear of the words garbage collector is clearly an issue, independent of whether GC is actually an issue for their codebases.

Java (and thus Kotlin, Groovy, Clojure, Scala, etc.) and Go, and indeed to a lesser extent D, have shown that GC is a very positive way forward in programming.

C++ folk are showing an inability to think of languages other than C++, so it seems fair enough to stop worrying about trying to replicate C++ in D. The languages have diverged and that is fine.

That Rust has gained so little traction amongst C++ programmers is further evidence that the era of D as Better C++ is long past. D is D and should stop showing angst.

D's future is not to replace C++, it is to be D; a language like Go that draws positively on the past, harnesses GC, and moves forward in that spirit.


-- 
Russel.
===========================================
Dr Russel Winder      t: +44 20 7585 2200
41 Buckmaster Road    m: +44 7770 465 077
London SW11 1EN, UK   w: www.russel.org.uk



November 19, 2019
On Tuesday, 19 November 2019 at 08:51:49 UTC, Pavel Shkadzko wrote:
> Sorry for "clickbaity" title but I believe it is discussion inducing.
>
> This spring I started looking into D and trying it for some of the data analysis and scripting tasks. So, I am fairly new to the language and all its toolset (mainly using Python and Scala at work). I don't know C++. We do however have C++ engineers so I asked them around. I was quite surprised that none of them knew or even tried to use D. They of course heard about the language but that's it.
>

The reasons are:
* C++ is the to go to language for systems programming
* Any project will choose C++ over D because
    * C++ proven, less bugs
    * There are plenty of C++ engineers out there
* Many tools, platforms and libraries are done in C/C++ making C++ the obvious choice.

D isn't more popular because there haven't been much need for switching and that projects mostly bet on safe choices.

For bare metal C++ is still the obvious choice but for applications I think C++ cannot compete anymore.

November 19, 2019
On Tuesday, 19 November 2019 at 11:09:25 UTC, IGotD- wrote:
> The reasons are:
> * C++ is the to go to language for systems programming
> * Any project will choose C++ over D because
>     * C++ proven, less bugs
>     * There are plenty of C++ engineers out there
> * Many tools, platforms and libraries are done in C/C++ making C++ the obvious choice.
>
> D isn't more popular because there haven't been much need for switching and that projects mostly bet on safe choices.
>
> For bare metal C++ is still the obvious choice but for applications I think C++ cannot compete anymore.


The question can be why C++ programmers like RUST but not D.

RUST achievement:

a) browser engine (firefox,  webrender)
b) Virtualization (firecracker, rust-virtual-machine, cloud-hypervisor, railcar , vagga  )
c) database, storage engine (tikv , PumpkinDB, sled, indradb, noria, ParityDB)
d) Emulators / Games / Graphics / Text editors (a lot projects on github with active users)
e) System tools (there is really a lot on github)
f) Web developer, WASM projects
g) betters IDEs support
h) BlockChain (Facebook Libra, and a lot other products worth millions or billions)
i) Android and IOS. (D has Android, but not IOS)

D has similar projects for web/wasm/GUI, but with less projects activity and users.

I suggest D should add a grave yard page with dead projects on this site.




November 19, 2019
On Tuesday, 19 November 2019 at 08:51:49 UTC, Pavel Shkadzko wrote:
> Sorry for "clickbaity" title but I believe it is discussion inducing.
>
> This spring I started looking into D and trying it for some of the data analysis and scripting tasks. So, I am fairly new to the language and all its toolset (mainly using Python and Scala at work). I don't know C++. We do however have C++ engineers so I asked them around. I was quite surprised that none of them knew or even tried to use D. They of course heard about the language but that's it.
>
> This Friday I also attended a PyTorch meetup in Munich at Microsoft where one of the core PyTorch developers (Adam Paszke) made a presentation about the future of this deep learning library. During presentation he mentioned that he played around with Hasktorch (a PyTorch inspired library in Haskell) to see how does PyTorch concepts go with functional style. When I approached him after the talk and asked if he ever thought of trying D for that purpose he looked surprised and confessed that he didn't know the language, heard about it yes but it never occurred to him to try and use it.
>
> Having read about how D is a better C++ and trying it out, I have a feeling that it would be extremely easy for C++ devs to just start programming in it minutes away after getting to know its syntax. I saw it with my own eyes in one of the Munich meetups on D. But why are so few C++ devs actually do it remains a mystery to me. I would really like to stay away from the general discussion on why D is not as popular as other languages :) rather I'd ask around for C++ programmers who have tried D and share some positive experience they had so that I could spread the word.

In addition to what others have written, here's another thing to consider: D's "killer feature" is its metaprogramming capabilities, but I don't think most C++ programmers, rightly or wrongly, care that much about metaprogramming. I think the reason Rust hasn't replaced C++ (so far, anyway) is similar - it's killer feature is "memory safety by default" but most C++ programmers that I know don't consider (lack of) memory safety to be a major problem in the language.
November 19, 2019
On Tuesday, 19 November 2019 at 13:06:29 UTC, Mark wrote:
> In addition to what others have written, here's another thing to consider: D's "killer feature" is its metaprogramming capabilities, but I don't think most C++ programmers, rightly or wrongly, care that much about metaprogramming. I think the reason Rust hasn't replaced C++ (so far, anyway) is similar - it's killer feature is "memory safety by default" but most C++ programmers that I know don't consider (lack of) memory safety to be a major problem in the language.

Sorry, could you please elaborate what do you mean by D "metaprogramming"?
« First   ‹ Prev
1 2 3 4 5 6