Live data from Hacker News

OpenD, a D language fork that is open to your contributions

dpldocs.info

101–110 of 322 posts

Re: OpenD, a D language fork that is open to your contributions

#101
post #9

Earlier quoted context omitted.

I think the fundamental problem with D is much simpler than that, it's the technical context. D is a better C++, but it's not better enough to escape the gravitational pull of C++. Rust is sufficiently compelling, with its focus on memory safety.

Rust is a really frustrating language for me: I understand the safety it provides but find the pain of actually using it makes it uncompelling. Plus, the Rewrite it in Rust movement is very off-putting

the frustrating thing for me has been trying to "port over" C++-isms or Python-isms both fail from one direction or another.

I've found that data structures with _lots of helper methods_ (thinking about things like `Result` in particular) tend to be nice. You do have to learn about Rust-specific things to figure out how to nicely structure your code for everything to work. But the payoff is less pain.

There are still a lot of futzy ownership questions, and even when you write out your supposedly performant and cool system, easy outs like cloning end up hiding in your system leading to some awkward performance questions. Fortunately the systems are merely slow, and it tends to show up in profiling.

Re: OpenD, a D language fork that is open to your contributions

#103
post #17

Earlier quoted context omitted.

D is completely opensource already ( https://github.com/dlang/dmd ). The "open" of OpenD is just ADR saying that OpenD will be more open to new language features than D has historically been.

which just means a different person is guiding the project

It’s about the policies and the culture that the leadership evokes, just like the leader of a country. It does matter who is in charge.

Re: OpenD, a D language fork that is open to your contributions

#104

My research group left D for Rust several years ago due to nonresponsiveness and poor language development trajectory. While I wish Adam and the others success with OpenD, I hope they can take the opportunity to pick a more unique/memorable name.

LiberateD FreeD

Community Edition D, or Com-Ed-D.

Re: OpenD, a D language fork that is open to your contributions

#105

Earlier quoted context omitted.

I felt the opposite back when I was using D (specifically, D1). It was obvious that everything you can do in C++ can be done in D in so much easier way that it could have replaced C++ in a near future if done right. This is even true when we compare D1 with the current C++20, so I believe D did have a good chance that was wasted somehow.

To overcome something as entrenched as C++ it has to be 10x better. Even rust isn't there. Most of it's community isn't ex C and C++ experts, it's people getting into low-level programming for the first time, either from scripting language or pure functional.

There are a lot of high profile Rust adoption stories where the developers involved are C and C++ experts. E.g. Rust in the Linux kernel, Rust in the Windows kernel, Rust in Firefox, Rust in Android.

Re: OpenD, a D language fork that is open to your contributions

#106
post #77

Earlier quoted context omitted.

Rust is a really frustrating language for me: I understand the safety it provides but find the pain of actually using it makes it uncompelling. Plus, the Rewrite it in Rust movement is very off-putting

Rust is a frustrating language for me too. I never saw the need for it, really. I just stuck with the language constructs in C++ that makes it basically impossible for memory leaks/use after free/use outside of bounds to occur or if they do occur, explode loudly in debug environments. I haven't used new/delete in a personal project in like a decade; longer than Rust has been around. Now I'm working on a project where…

What kind of solution would you propose to folks like your boss?

One positive aspect I see about "rewrite it in Rust" is that you can to some degree expect a random Rust project to not leak and crash and expose vulnerabilities quite as much as a random C++ project. It's silly, but "written in Rust" acts somewhat as a badge of safety and performance, whereas "written in Java" and "written in C++" each only carry one of the two.

Of course, developer skill is also huge. You can write slow Rust code or fast Java code, yadda yadda.

Re: OpenD, a D language fork that is open to your contributions

#108

Earlier quoted context omitted.

What about the situations where you don't want the memory overhead of the GC?

Again, the answer depends on whether you absolutely don't want that or just want to minimize that. I believe something like `@explicitgc` is enough annoyance to make sure that you are conscious about GC and memory allocation. If you need even more guarantee, you have to make sure that everything you transitively call is i) marked as `@explicitgc` and ii) has no GC call inside. Given enough demand you may have both `@…

It's not strictly impossible to avoid panicing in Rust, but it's pretty painful. The approaches typically involve forcing a linker error if a panic is linked (https://docs.rs/no-panic).

Yes, you'll be (re)writing a lot more code than if panics are acceptable.

Re: OpenD, a D language fork that is open to your contributions

#109
Unfortunelly this was bound to happen, after so much remarks on forking D throughout the years.

Almost everything I liked in D when Andrei Alexandrescu's book came out in 2010, have made its way to C#, Java, C++.

Yeah, maybe the implementation isn't as nice as in D, but that hardly matters when the implementation is available in some form, with much better tooling and library ecosystem.

Too many years lost chasing the golden feature that would bring people in, without stabilitizing those features.

Even Andrei is nowadays apparently mostly busy with C++ and CUDA than D.

And then there is the whole compile to native programming languages renaissance from the last decade, adding even more competition.

Which is a pity, as the community itself is full of great folks to talk with.

Re: OpenD, a D language fork that is open to your contributions

#110
post #9

Earlier quoted context omitted.

I think the fundamental problem with D is much simpler than that, it's the technical context. D is a better C++, but it's not better enough to escape the gravitational pull of C++. Rust is sufficiently compelling, with its focus on memory safety.

I keep saying this and having the exact same argument with everyone every single time I mention it (and I'm sure here we'll go again), but D's fundamental problem was its GC. Its mere presence colors the code that uses it, and once your dependencies use the GC, you have no recourse. It's impossible to abstract away. I fail to see how such a language could ever substitute for C++.

Easy, see the use of Oberon, Java, .NET in bare metal IoT deployments.

PTC, Aicas, microEJ, Astrobe, Meadow,...

The problem isn't having a GC, is its poor implementation.

Post reply on HN