October 28, 2022

On Friday, 28 October 2022 at 09:51:04 UTC, Imperatorn wrote:

>

Hi guys,

Just wanted to remind you that, D maybe isn't that bad.

We're very good at bashing our own language, but we should also remember sometimes what it has given us.

I have spent the last months going through other languages, and I can say, the grass is always not so much greener on the other side.

Yes, there are more mature languages.
Yes, there are languages with better ecosystems.

But, just as an example - Zig - which is getting attention, is according to the community itself (including its creator) not in 1.0 until about 2025.

And still people use it, and might even think it's better than D.

Some information from their community (not my words)
It does not have a standardized package manager and build system.
It does not have an official registry of packages.
It is unstable.
It should not be used in production (actively advised against).
It changes so often that you can not rely on code to work even in 1 month from now.
etc

And still, people still think Zig is better for some reason.

Yes, D has it's flaws, true. But it's far from unfixable? Or is that what people believe?

Forget about Jai, Odin, Beef and all those languages.

Go - Welcome rheumatism 👴
Rust - Welcome brain tumor from not even being able to prototype something in less than 2 years 😩
C++ - Welcome to hell 🔥
...

The only real language out there that is close to what D is/could be is Nim and I respect it.
But, its syntax is not that kind to those who loved the curly braces.

All I'm saying is - maybe it's best if we just fix D?

There is some valid criticism, like the risk for attribute soup etc. But maybe it's fixable?

Remember what D gives you in terms of UFCS, CTFE, metaprogramming, performance, package manager, prototyping, inline assembly, 3 compilers for different use cases etc.

Is D really that bad?

The language itself isn't bad, it actually quite alright, when I bough Andrei's book, I thought to have found a modern version of Modula-3 and Delphi.

However in all these years, the direction was never clear, and its use at Facebook and Remedy didn't do much to help it grow adoption.

Nowadays although D the language is quite nice, for my line of work, the ongoing improvements in Java and C# languages for low level coding + AOT + ecosystem, mean that in no way I would be able to convince my peers to use D.

On top of that, for better or worse, Go and Rust are also creeping in into my line of work, as we are adopting frameworks written in those languages, making it even harder to try to advocate for D.

So for me, D remains one of the languages that I have fun doing hobby coding.

October 28, 2022

On Friday, 28 October 2022 at 09:51:04 UTC, Imperatorn wrote:

>

Hi guys,
Is D really that bad?

It seems you already have an answer, and looking for validation,
what you see is what you get, there are no secrets or hidden gems

If you dont like what you see, you dont like D

October 28, 2022

On Friday, 28 October 2022 at 11:28:17 UTC, Ola Fosheim Grøstad wrote:

>

On Friday, 28 October 2022 at 09:51:04 UTC, Imperatorn wrote:

>

And still, people still think Zig is better for some reason.

I don't think it makes much sense to talk about better or worse without a use case. Zig seems to aim for embedded like settings, but I don't like the language design regardless, as of today. But that could change.

>

Yes, D has it's flaws, true. But it's far from unfixable? Or is that what people believe?

You cannot predict the future, but if you go 10 years back and identify things that ought to be fixed (in the sense that it would make the language more broadly appealing) and find that those issues are still there, then there must be something making it difficult to address. Could be the current compiler code base, could be other things.

Keeping the same process makes it improbable that there will be a significant change, for good or bad.

>

Forget about Jai, Odin, Beef and all those languages.

Why forget about Jai? If it gains traction in a specific domain like games, why not use it?

(There are also plenty of others in the works: Carbon, Circle, C++2.0, V etc)

I see what you're saying. But you miss my point a bit. I know about all those languages and I have talked with the communities and got a peek inside. It's not really that appealing.

I seriously think we should try and "fix" D instead of chasing everything else.
Focus on expressiveness, plasticity and stability. We don't have to be best at everything, but we can be decent. Also I think, if we just fixed up some things, D would be pretty competitive (well, more than it is now), and become at least top 20 again. I don't think it has to be top 10. Top 25 is enough for more adoption.

October 28, 2022
Well, I have like 5 years + experience in programming. What I can say about D is that it is a really nice language. It does not feel that experimental as some people make it feels, but I guess there is just one point to make.

Although I had never done a project with a scope similar to Hipreme Engine before, I must say that it was frustrating finding compiler bugs, my other coding experiences being Javascript, Lua, C/C++ and Java. D was the first language that I was being able to find bugs that were not caused really by my logic, but the compiler itself. Obviously, when comparing D to languages such as C or Javascript, D is a lot more complex, it has many other features that most of the languages I've just mentioned here doesn't even have.

What I would say that D accepts many coding styles, this can bring unexpected bugs and that is a problem that hopefully will be solved as the time passes. I do believe that using these other languages using bleeding edge features will always make you find a compilation bug too.

At least I have been contributing on my own way to D's ecosystem as my project has been started in 2019 (it had an hiatus period), and it is still ongoing. As most people say: just use the language. I have impressed many people at interviews and made them interested in this language, so I believe this is a matter of time until it becomes really stable for every coding style.
October 28, 2022
On Friday, 28 October 2022 at 16:22:52 UTC, Hipreme wrote:
> Well, I have like 5 years + experience in programming. What I can say about D is that it is a really nice language. It does not feel that experimental as some people make it feels, but I guess there is just one point to make.
>
> [...]

Yes, I think since D is so moldable and allows for so much you sometimes get bugs.

But my bottom line is, I think we should fix those things instead of chasing other languages. 🍀
October 28, 2022

On Friday, 28 October 2022 at 15:55:33 UTC, Paulo Pinto wrote:

>

On Friday, 28 October 2022 at 09:51:04 UTC, Imperatorn wrote:

>

[...]

The language itself isn't bad, it actually quite alright, when I bough Andrei's book, I thought to have found a modern version of Modula-3 and Delphi.

However in all these years, the direction was never clear, and its use at Facebook and Remedy didn't do much to help it grow adoption.

Nowadays although D the language is quite nice, for my line of work, the ongoing improvements in Java and C# languages for low level coding + AOT + ecosystem, mean that in no way I would be able to convince my peers to use D.

On top of that, for better or worse, Go and Rust are also creeping in into my line of work, as we are adopting frameworks written in those languages, making it even harder to try to advocate for D.

So for me, D remains one of the languages that I have fun doing hobby coding.

Same for me. But I never understand why. If D was called Rust instead, would it be more popular or widely used? I seriously don't know sometimes. It feels like fashion

October 28, 2022
On Friday, 28 October 2022 at 16:22:52 UTC, Hipreme wrote:
> [snip]
> Although I had never done a project with a scope similar to Hipreme Engine before, I must say that it was frustrating finding compiler bugs, my other coding experiences being Javascript, Lua, C/C++ and Java. D was the first language that I was being able to find bugs that were not caused really by my logic, but the compiler itself. Obviously, when comparing D to languages such as C or Javascript, D is a lot more complex, it has many other features that most of the languages I've just mentioned here doesn't even have.
> [snip]

Please report any bugs to https://issues.dlang.org/
October 28, 2022

On Friday, 28 October 2022 at 09:51:04 UTC, Imperatorn wrote:

>

Hi guys,

Just wanted to remind you that, D maybe isn't that bad.

[...]

There is something to be said for adding static break and static continue to the language, and we could do away with classes as a reference type, but D is the only language that provides the metaprogramming facilities that I need.

October 28, 2022

On Friday, 28 October 2022 at 16:58:20 UTC, RubyTheRoobster wrote:

>

On Friday, 28 October 2022 at 09:51:04 UTC, Imperatorn wrote:

>

Hi guys,

Just wanted to remind you that, D maybe isn't that bad.

[...]

There is something to be said for adding static break and static continue to the language, and we could do away with classes as a reference type, but D is the only language that provides the metaprogramming facilities that I need.

Write a DIP 😍

October 28, 2022

On Friday, 28 October 2022 at 16:59:51 UTC, Imperatorn wrote:

>

On Friday, 28 October 2022 at 16:58:20 UTC, RubyTheRoobster wrote:

>

On Friday, 28 October 2022 at 09:51:04 UTC, Imperatorn wrote:

>

Hi guys,

Just wanted to remind you that, D maybe isn't that bad.

[...]

There is something to be said for adding static break and static continue to the language, and we could do away with classes as a reference type, but D is the only language that provides the metaprogramming facilities that I need.

Write a DIP 😍

I would write one, but I don’t want my name on anything.