On Sunday, 16 May 2021 at 09:22:00 UTC, Ola Fosheim Grostad wrote:
> Is there a plan? No? Will there be a plan? Right now, it does not seem likely. People make suggestions all the time, but there is no signal of a likely path.
On the topic of a plan (just in general, not specifically about DMD's memory usage):
-
It begs the question of, how is it possible for anyone to even organise a cohesive plan coming forward, since it requires participation from both the leadership, core team, and also D's community (ideally).
-
Even if we can bring a plan forward, how can the people in charge ensure that it is executed, especially in a timely manner?
-
One problem I see all the time with discussions on D, we want to be everything yet end up as nothing; we want to please every single type of programmer, yet that leads to impossible situations, and compromise is for some reason always out of the question; we want everything to be perfect and work in every situation, but this often isn't achievable, and no compromise is made.
So with massive hurdles at any part of even getting people together to make a plan, let alone making the actual plan, what could the future look like for D's progression and evolution?
My best guess is: It'll be the same as always. DIPs that get rejected for not being completely perfect in every possible use-case (and god forbid it use the GC); features that appear out of nowhere; "glaring" or "fundamental" issues (for whomever is complaining that is) will be ignored and swept to the side with "fix it yourself/file an issue"; things just happen when they happen with no rhyme or method, and so on...
Even worse is when exciting things like newCTFE are teased for years, only to be dropped :(
Or things like DIP 1028(?) where mostly a single point of tension (all extern functions being @safe by default) causes all that hard work to go to waste.
Without a cohesive direction and a well-defined plan, I'd say it definitely increases the risk factor of someone/some entity adopting D for a project, due to the large uncertainty and confusion about what kind of language D is.
e.g. I wonder what people who keep on eye on D, but only on a casual level, would think once they learn about ImportC. I wonder if the feeling would be of confusion or excitement (or both!). I wonder if they'll get a feeling of an identity crisis of sorts.
e.g. We're a language with both a GC and @nogc, yet we don't provide many tools out of the box for @nogc code (containers?); we're becoming GC-phobic in regards to features and library changes; etc.
Then there's all this hub-bub about a possible Phobos v2/v2021/whatever, and it's like: will this actually lead anywhere, is there any actual intention to go through with this, or is this just a theoretical talking point for the next part of a decade?
idk, this was kind of just a ramble - I feel D's overall direction and management doesn't seem to be "keeping up with the times" so to speak. It's kind of like that "This is fine" meme in a way, I don't know how to describe it.
Uncertainly. Lack of clarity. Lack of obvious public direction and vision. What could happen to try and tackle these things (if they're even problems at all and it's not just me having bad observations)?