December 08

On Friday, 8 December 2023 at 09:06:34 UTC, Hors wrote:

>

This is one of biggest mistakes in dlang's design. They tried to be "everything" (being both garbage collected and not, being both safe and unsafe system language...), it backfired because as you said, you always need to exclude some people or features.

I couldn't agree more. D needs to pick its poison :)

>

IMO dlang needs to be splitted into two different languages one for system and one for general-purpose safe language, but then this means a breaking change to simply every existing D project.

I don't think there is enough people interested in a high level language in the D community. If anything, I see D becoming more and more of a system language over time.
Therefore, I am thiiiiiiiiiiis close to just forking it and tweaking it to be more high-level language. I'm mostly stopped by needing to write code completion though

December 08

On Thursday, 7 December 2023 at 19:21:10 UTC, Paulo Pinto wrote:

>

Unreal is also full of OOP, and Unreal C++ alongside Blueprints uses a GC.

Their business is doing quite well.

Computer games and GC is really a good match if you have room for certain performance hit (regardless of type of GC). Many computer games have a lot of objects, these objects also often have some kind of relationship to each other. The lifetime and relationships are usually totally unpredictable. If the developers can do away with lifetime tracking and all associated bugs that's a big win, especially when investors today seem to have unrealistic deadlines. There are usually enough bugs as it is anyway.

GC in computer games today is probably standard I would presume. GC in the D language is a great thing and I don't want it to go away, just make it better.

December 08

On Friday, 8 December 2023 at 11:42:22 UTC, ryuukk_ wrote:

>

D would annihilate the game industry thanks to its type introspection capabilities

  • source code snipped...

0 OOP, few lines, only data, maximum performance

Let's promote this, not final public abstract class ECSSystem : Updatable, Syncrhonicable BS OOP propaganda

10000% Agree! Dlang has potential in the gaming industry.
Still dominated by C++ but it will be interesting to see if Odin or Jai rise in popularity in the coming years.

Is there any lessons they are doing that could elevate D? Odin, for example, seems to have a lot of tools "out of the box" to get you start easily.

Back to the point - D has soooo muh potential in this field!

December 10

On Friday, 8 December 2023 at 13:27:46 UTC, GrimMaple wrote:

>

On Friday, 8 December 2023 at 09:06:34 UTC, Hors wrote:

I couldn't agree more. D needs to pick its poison :)

I thought we're way past that decision after 10yrs. I doubt D is changing to anything other than what it is now. The language is mature and set. It's already being used put there.

December 10

On Friday, 8 December 2023 at 09:06:34 UTC, Hors wrote:

>

On Tuesday, 5 December 2023 at 21:26:05 UTC, GrimMaple wrote:
[...]
This is one of biggest mistakes in dlang's design. They tried to be "everything" (being both garbage collected and not, being both safe and unsafe system language...), it backfired because as you said, you always need to exclude some people or features.
[...]

FWIW, IMO, apart from the development and maintenance effort, there is nothing wrong in 'trying to be everything'. Indeed it's a laudable effort.

There (was) a specific problem with the GC debate, in that there appeared to be a real effort to 'force' developers into the GC camp, rather than simply presenting it as an option (and I personally think that for business application programming it is a very good idea).
Trying to force people to do anything, even if you sincerely believe in what you are advocating, is simply a bad idea.

December 10

On Sunday, 10 December 2023 at 17:47:52 UTC, DLearner wrote:

>

On Friday, 8 December 2023 at 09:06:34 UTC, Hors wrote:

>

On Tuesday, 5 December 2023 at 21:26:05 UTC, GrimMaple wrote:
[...]
This is one of biggest mistakes in dlang's design. They tried to be "everything" (being both garbage collected and not, being both safe and unsafe system language...), it backfired because as you said, you always need to exclude some people or features.
[...]

FWIW, IMO, apart from the development and maintenance effort, there is nothing wrong in 'trying to be everything'. Indeed it's a laudable effort.

Everything here means being a c/zig replacement, c++ replacement, python replacement and for the hell of it rust replacement

and no, there is just no way to do that; the rust replacement plan of making a """"borrow checker"""" went nowhere, importC isn't going to implement a 1 to 1 preprecosser so it won't ever be useful and zig must be an ok c compiler given what people say is done.

D should focus on being a c++ replacement; we have better templates they just aren't well used by the std and it's not being communicated.

December 10

On Sunday, 10 December 2023 at 18:07:35 UTC, monkyyy wrote:

>

D should focus on being a c++ replacement; we have better templates they just aren't well used by the std and it's not being communicated.

I agree 100% and that is why it was named D to begin. The world has since then moved on and C++ as well (but you can argue it became Frankenstein monster). D should remain a competitor to C++ but it needs to move on as well in order to remain competitive.

December 11

On Friday, 8 December 2023 at 13:27:46 UTC, GrimMaple wrote:

>

On Friday, 8 December 2023 at 09:06:34 UTC, Hors wrote:

>

This is one of biggest mistakes in dlang's design. They tried to be "everything" (being both garbage collected and not, being both safe and unsafe system language...), it backfired because as you said, you always need to exclude some people or features.

I couldn't agree more. D needs to pick its poison :)

That D treats those two domains equally is supposed to be its unique selling point that no mainstream language does. I still fail to see why so many people pick D and then advocate for killing that fundamental feature. Aren't you excited about the thought that you can use one language to excel in both domains?

> >

IMO dlang needs to be splitted into two different languages one for system and one for general-purpose safe language, but then this means a breaking change to simply every existing D project.

I don't think there is enough people interested in a high level language in the D community. If anything, I see D becoming more and more of a system language over time.
Therefore, I am thiiiiiiiiiiis close to just forking it and tweaking it to be more high-level language. I'm mostly stopped by needing to write code completion though

Consider the two probably biggest companies using D. Symmetry investments used D for high level purposes. Weka.io on the other hand vendors a file system, which is a systems langauge job. If we were to declare either domain a second class citizen, we have to anger one of those companies.

December 11

On Monday, 4 December 2023 at 09:31:16 UTC, GrimMaple wrote:

>

On Tuesday, 28 November 2023 at 15:19:25 UTC, DrDread wrote:

>

why don't you start giving it the attention then?
And it's not like building tools/3rd party for D is a good idea anyway. Since the language can't decide what it wants to be, and you end up having to either overengineer your code, either listen to a lot of complaints how your code is unsupported in certain cases.

D isn't tripping you here, rather the other languages sweep the dust under the rug. For instance, if you implement a library in Java, you're automatically failing to support GC-less programming. You don't have to support @nogc/-betterC scenarios in D either (and probably are best off not supporting them in most cases, at least for initial versions), it's just that the language gives you the choice.

December 11

On Monday, 11 December 2023 at 07:18:44 UTC, Dukc wrote:

>

Symmetry investments used D for high level purposes.

Clarification: this is a typo. I meant "uses", not that Symmetry would have stopped using D.