Live data from Hacker News

Driving with D

dlang.org

151–160 of 186 posts

Re: Driving with D

#151
post #143

Earlier quoted context omitted.

on the point of the GC being a good thing to have, this is true, but not when your main objective is to replace C++, C++ key advantage being RAII deterministic manual memory management You cant replace C++ with GC language, even 10 years ago this should have been evident to a seasoned developers such as Walter Bright and Andrei Alexandrescu Sometimes great developers are bad product managers Anyway, with Rust and Go,…

You surely can, it depends on the domain. "Lockheed Martin reviewed various options for the Aegis Open Architecture including the programming language and execution environment for the system. In their experiments, they found that HotSpot Java code ran comparable to C++ on an experimental 250 millisecond periodic workload. At the same time, they found that the Java language provided superior abstraction and encapsula…

HotSpot was not the mainstream JVM I see now its been opensourced, and apparently, np longer in active development, and I dont know how much of it made it into mainstream Java

Java is one of the top 3-5 most popular languages, and have huge backing

So its understandable that people found a way to make it fast, and honeslty, i dont really know how much effort does this require, but it seems from your example, it less than what C++ need

This all in all, seem counter intuitive, if Java is really as fast as C++, why is it that mainstream knowledge suggest otherwise

Either, your example is hiding something, or there is other reasons people still use C++ when they need high performance

D was meant to replace C++ not be a fast Java like language, I would argue, it achieved neither

D wanted to be a mainstream language, this is why the adopted the C/C++/Java style of programming, and again they didnt achieve this objective

D is not instinct, it still have a small dedicate user base, I just wholeheartedly think, today, you have far better options: Rust, Go, OCaml , C# , Kotlin

Re: Driving with D

#152
post #141

Earlier quoted context omitted.

> And I really question what these situations are where you can't have garbage collection in 2021. Game development, anything with a UI (GC pauses frustrate users), anything that needs high performance (scientific applications, data analysis), you name it. Ownership semantics have a side-benefit of automatic thread safety; something that is less important than memory safety (because many programs can work in one thre…

>Game development C# Unity, Lua Love 2D,... >anything with a UI (GC pauses frustrate users) Millions of C#, Java, Python, Javascript UI apps >anything that needs high performance (scientific applications, data analysis) Numpy, Julia,... Using non garbage collected languages for 99% of apps today is a waste of time, and i'm saying this as mostly an embedded developer.

You listed a bunch of engines written in C and C++.

Re: Driving with D

#153

Earlier quoted context omitted.

Ultimately, for any language to become popular, it must bring something radically new on the table (e.g. Java: relative performance, simplicity and safety; Python: immediacy; etc.), and/or have a big company behind. D doesn't have any of the two (unfortunately! I do appreciate the language). This viewpoint is typically represented by the question "what can I do in X that I can't in C++?". Something I personally find…

I don't know that it's essential that a big company be behind a language. What's essential is that the tooling and the libraries be top-notch. That's beyond the reach of an individual, or even a small team. But a large company can easily provide the resources to do that. (The third essential is that a language do something significantly better or easier than existing languages. A language can't just be "does the same…

I can't remember where I heard this, but there's a principle that a competing product can't just be 10% better. To justify the cost of switching, it has to be 10X better.

Re: Driving with D

#154
post #143

Earlier quoted context omitted.

You surely can, it depends on the domain. "Lockheed Martin reviewed various options for the Aegis Open Architecture including the programming language and execution environment for the system. In their experiments, they found that HotSpot Java code ran comparable to C++ on an experimental 250 millisecond periodic workload. At the same time, they found that the Java language provided superior abstraction and encapsula…

HotSpot was not the mainstream JVM I see now its been opensourced, and apparently, np longer in active development, and I dont know how much of it made it into mainstream Java Java is one of the top 3-5 most popular languages, and have huge backing So its understandable that people found a way to make it fast, and honeslty, i dont really know how much effort does this require, but it seems from your example, it less…

My example is not hiding anything beyond the fact that most people are clueless about how big Java ecosystem actually is.

Not everyone is doing Websites or Android apps.

PTC isn't using Hotspot, rather their own JVM implementation.

Just like C++, Java enjoys multiple implementations.

Just like C++, the best ones for embedded deployment with soft real time capabilities, are commercial, directly supported by hardware vendors.

D's biggest failure so far is not having a Google or Apple behind it, that would push the language no matter what naysayers have to say against the language.

Just like on iOS and Android, wanna play? Here are the allowed list of toys.

Re: Driving with D

#155
post #154

Earlier quoted context omitted.

HotSpot was not the mainstream JVM I see now its been opensourced, and apparently, np longer in active development, and I dont know how much of it made it into mainstream Java Java is one of the top 3-5 most popular languages, and have huge backing So its understandable that people found a way to make it fast, and honeslty, i dont really know how much effort does this require, but it seems from your example, it less…

My example is not hiding anything beyond the fact that most people are clueless about how big Java ecosystem actually is. Not everyone is doing Websites or Android apps. PTC isn't using Hotspot, rather their own JVM implementation. Just like C++, Java enjoys multiple implementations. Just like C++, the best ones for embedded deployment with soft real time capabilities, are commercial, directly supported by hardware v…

D had Andrei Alexandrescu behind it for years, he worked at facebook for a while and tried to push D there, and they did used D for while

Andrei is a big deal i would say

Since then FB moved on the build their own Ocaml based language reasonml

Julia doesn't have a big company behind, yet the language is steadily climbing the popularity ladder (and i doubt they have anyone at the calibre of Andrei Alexandrescu, but again, good pogrammer is not a good program manager)

D is not popular, because its leader failed at making it popular, they failed to give the qualities that would make it popular

Re: Driving with D

#156
post #143

Earlier quoted context omitted.

You surely can, it depends on the domain. "Lockheed Martin reviewed various options for the Aegis Open Architecture including the programming language and execution environment for the system. In their experiments, they found that HotSpot Java code ran comparable to C++ on an experimental 250 millisecond periodic workload. At the same time, they found that the Java language provided superior abstraction and encapsula…

HotSpot was not the mainstream JVM I see now its been opensourced, and apparently, np longer in active development, and I dont know how much of it made it into mainstream Java Java is one of the top 3-5 most popular languages, and have huge backing So its understandable that people found a way to make it fast, and honeslty, i dont really know how much effort does this require, but it seems from your example, it less…

>D was meant to replace C++ not be a fast Java like language, I would argue, it achieved neither.

Cannot comprehend your logic here, one of the Java objectives was also to replace C++. It kind of achieved the objective by consistently being top 3 languages since its introduction and it achieved that by not even natively compiled, unlike D. Based on Java story, it seems that having no GC is not a required condition for success. I'd had imagined if Java is not being invented the entire Android eco-system (the world's most popular operating system) will be written in C++.

>D wanted to be a mainstream language, this is why the adopted the C/C++/Java style of programming, and again they didnt achieve this objective

Not sure what is your point here since almost every programming languages wanted to be a mainstream language including Ruby, regardless whether the author admit it or not.

>D is not instinct, it still have a small dedicate user base, I just wholeheartedly think, today, you have far better options: Rust, Go, OCaml , C# , Kotlin

I think you meant 'extinct'. Time will eventually tell and no need to be so negative. When Python was 20 years old (about the same age as D today), it literally was playing a 2nd or 3rd fiddle to PHP, TCL, Perl, R, Ruby and Matlab in their respective domains, and look where is Python now? I believe even Guido did not have predicted the astronomical rise of Python at the time.

Re: Driving with D

#157
post #154

Earlier quoted context omitted.

My example is not hiding anything beyond the fact that most people are clueless about how big Java ecosystem actually is. Not everyone is doing Websites or Android apps. PTC isn't using Hotspot, rather their own JVM implementation. Just like C++, Java enjoys multiple implementations. Just like C++, the best ones for embedded deployment with soft real time capabilities, are commercial, directly supported by hardware v…

D had Andrei Alexandrescu behind it for years, he worked at facebook for a while and tried to push D there, and they did used D for while Andrei is a big deal i would say Since then FB moved on the build their own Ocaml based language reasonml Julia doesn't have a big company behind, yet the language is steadily climbing the popularity ladder (and i doubt they have anyone at the calibre of Andrei Alexandrescu, but ag…

Last time I checked MIT is rather big.

Facebook never really adopted D beyond a C++ preprocessor written in D.

And yes the community is rather lousy with language marketing, which is completely unrelated to technical achievements.

Re: Driving with D

#158
post #141

Earlier quoted context omitted.

>Game development C# Unity, Lua Love 2D,... >anything with a UI (GC pauses frustrate users) Millions of C#, Java, Python, Javascript UI apps >anything that needs high performance (scientific applications, data analysis) Numpy, Julia,... Using non garbage collected languages for 99% of apps today is a waste of time, and i'm saying this as mostly an embedded developer.

You listed a bunch of engines written in C and C++.

How does that matter? You said "game development", not "writing a game engine". You said "data analysis", not "writing linalg algorithms", in which case we'd all have to bow to Fortran anyway.

Your argument also doesn't apply to GUI apps, anyway. C# and Java amount to a huge number of such apps, and they're self-hosted.

GC languages are vastly more productive that manual-memory languages, and for the vast majority of users, that is worth the performance hit.

Re: Driving with D

#159
post #141

Earlier quoted context omitted.

>Game development C# Unity, Lua Love 2D,... >anything with a UI (GC pauses frustrate users) Millions of C#, Java, Python, Javascript UI apps >anything that needs high performance (scientific applications, data analysis) Numpy, Julia,... Using non garbage collected languages for 99% of apps today is a waste of time, and i'm saying this as mostly an embedded developer.

You listed a bunch of engines written in C and C++.

Unreal then,

https://docs.unrealengine.com/4.26/en-US/ProgrammingAndScrip...

Or you prefer anything written in DirectX or Metal?

Chapter 5 from The Garbage Collection Handbook.

https://gchandbook.org/contents.html

Re: Driving with D

#160

Earlier quoted context omitted.

D is easy to pick up, and has three really fast compilers. It feels like a very practical language. Rust in comparison feels much less practical - glacial compile times and byzantine rules about manging memory. It may be 'safer' but that's a moot point when I find it all so unintuitive that I'm not going to be able to make anything with it anyway. And I really question what these situations are where you can't have g…

Audio plugins is one case. Dplug disables the GC because of an issue on MacOS. So far there is no workaround so we have to write @nogc code.

On Windows you can use C# for audio plugins.

https://docs.microsoft.com/en-us/windows/uwp/audio-video-cam...

Post reply on HN