November 18, 2021
On Thursday, 18 November 2021 at 17:31:24 UTC, H. S. Teoh wrote:

> Even C has not stopped evolving. And C++.  Why should we stop now?  The time when D stops evolving is the time it's dead.

I am not convinced D has figured out how to evolve. More honestly, I am convinced D is not capable of evolving, and will in ten years look pretty close to what it is now. Whether that is good or bad is up to each programmer to decide. Perl 5 (renamed to Perl 7, but that was only for marketing purposes) is still widely used and provides a solid platform after 27 years. The innovative changes are now in the barely-used Raku.

November 18, 2021
On Thu, Nov 18, 2021 at 05:46:52PM +0000, bachmeier via Digitalmars-d wrote:
> On Thursday, 18 November 2021 at 17:31:24 UTC, H. S. Teoh wrote:
> 
> > Even C has not stopped evolving. And C++.  Why should we stop now? The time when D stops evolving is the time it's dead.
> 
> I am not convinced D has figured out how to evolve. More honestly, I am convinced D is not capable of evolving, and will in ten years look pretty close to what it is now. Whether that is good or bad is up to each programmer to decide.

That depends.  It's good in the sense that code I have today will likely still compile then, modulo some small changes to upgrade the syntax perhaps.  It's not so good in the sense that design decisions that were in hindsight the wrong ones will remain and never be corrected.

I'm seriously hoping Andrei pulls off stdv2, because that's the only way I see to move forward with Phobos.  Otherwise Phobos is just stuck in a stagnant state and there's no way to move forward.


> Perl 5 (renamed to Perl 7, but that was only for marketing purposes) is still widely used and provides a solid platform after 27 years. The innovative changes are now in the barely-used Raku.

Yeah, I even forgot it was called Raku once and had to look it up.  :-D I didn't see anything particular inspiring about it that would motivate me to spend the effort to learn it.


T

-- 
This sentence is false.
November 18, 2021
On Thursday, 18 November 2021 at 17:59:06 UTC, H. S. Teoh wrote:
> I'm seriously hoping Andrei pulls off stdv2, because that's the only way I see to move forward with Phobos.

It's that or we fork the language and seize control then just start actually fixing things.
November 18, 2021

On Thursday, 18 November 2021 at 17:59:06 UTC, H. S. Teoh wrote:

>

I'm seriously hoping Andrei pulls off stdv2, because that's the only way I see to move forward with Phobos. Otherwise Phobos is just stuck in a stagnant state and there's no way to move forward.

I'll never understand why people put any emphasis on Phobos! Anyone can create their own, the only blocker is if language features makes it hard (like RC).

November 18, 2021

On Thursday, 18 November 2021 at 17:21:40 UTC, Guillaume Piolat wrote:

>

On Tuesday, 16 November 2021 at 08:55:27 UTC, Abdulhaq wrote:

>

Is there a set of features that, when fully working, will mean that D2 is now finished? Or will it forever be in a state of ongoing feature development?

We all know that properly finishing and polishing the last 10% of a software project takes 90% of the time. Is there a timescale for that? What platforms will it support?

What is an example of a successful language that would stop feature development?

I specifically explained in a follow-up post, previous to yours, that I'm not suggesting that new feature development be stopped. I am simply and genuinely asking a simple question. Check my previous posts if you think I'm trolling - I'm not.

>

If D would stop feature development, it wouldn't solve the "billion posts" problem of people not vested in D complaining loudly in the D forums.

I'm not complaining, I'm explaining why I think that corporate users are not using D. I'm hoping to help those people who do care about why D remains relatively unknown and unused, and I'm doing it politely. I don't feel the tiniest emotion about it, I just want to give a POV that I think can help lift the number of users.

November 18, 2021
On Thursday, 18 November 2021 at 17:31:24 UTC, H. S. Teoh wrote:
> On Thu, Nov 18, 2021 at 05:21:40PM +0000, Guillaume Piolat via Digitalmars-d wrote:
>> On Tuesday, 16 November 2021 at 08:55:27 UTC, Abdulhaq wrote:
>> > Is there a set of features that, when fully working, will mean that D2 is now finished? Or will it forever be in a state of ongoing feature development?
>> > 
>> > We all know that properly finishing and polishing the last 10% of a software project takes 90% of the time. Is there a timescale for that?  What platforms will it support?
>
> Even C has not stopped evolving. And C++.  Why should we stop now?  The time when D stops evolving is the time it's dead.
>
>
>> What is an example of a successful language that would stop feature development?
>> 
>> If D would stop feature development, it wouldn't solve the "billion posts" problem of people not vested in D complaining loudly in the D forums.
>
> I suspect these are just the vocal minority. The rest of the happy D users are too busy actually writing code than debating on the forums.
>
>
> T

I'm not suggesting, as I made explicitly clear in a previous post, to stop new feature development.

I think some D users would like to see increased user numbers and are happy to get good practical suggestions as to how to do that. Andrei for one. It would help the hobbyists too because there would be more hands to do more work.

November 18, 2021
On Thu, Nov 18, 2021 at 06:03:07PM +0000, Adam D Ruppe via Digitalmars-d wrote:
> On Thursday, 18 November 2021 at 17:59:06 UTC, H. S. Teoh wrote:
> > I'm seriously hoping Andrei pulls off stdv2, because that's the only way I see to move forward with Phobos.
> 
> It's that or we fork the language and seize control then just start actually fixing things.

I have to say, the thought has crossed my mind a few times.  Only thing is, this community is already so tiny, splitting it would probably mean death to both resulting dialects.

Though on 2nd thoughts, forking *Phobos* could actually be viable... Even put it up on dub as a Phobos alternative and let the two compete, see which one survives.


T

-- 
"The whole problem with the world is that fools and fanatics are always so certain of themselves, but wiser people so full of doubts." -- Bertrand Russell. "How come he didn't put 'I think' at the end of it?" -- Anonymous
November 18, 2021

On Thursday, 18 November 2021 at 12:31:43 UTC, FeepingCreature wrote:

>

I don't think D is ready to be used by everyone for every purpose. But I think it's ready to be used by some for some purposes, and has been for a long time. Even by many for many purposes. I think the set of "customers that D is ready for" is badly communicated at the moment, but it is definitely non-empty. (Evidence one.)

PS: I concur with the GC. I think this is one case where D majorly falls down, because it advertises as "you don't need to think about memory management" and if you take that seriously, you will get punished for it as you scale up input. You can't write D like Java, because D's GC is significantly less forgiving, but this is not communicated anywhere.

PPS: 'shared' is one of those features that we've just elected to not touch with a ten foot pole. It does nothing useful for us; I believe I've had rants on the topic. :) Luckily, it's easy to pretend it doesn't exist.

This answer has improved my understanding of where D is at, thank you. It's this information that is not coming over loud and clear to me.

Personally, I don't have a strong opinion on GC vs nogc etc., etc. I do think that if the community could agree to differ on these issues, state clearly what is fully supported and what platforms it works excellently on, and commits to maintain those features on those platforms at that level of excellence, then numbers will pick up faster than they otherwise would.

Off the top of my head I'd also even consider making an LTS release that had no preview options. Again just an observer's perspective but it feels like with the various DIPs and previews available that this causes an interoperability problem between libraries. I'm happy to be corrected if that is not the case.

November 18, 2021
On Thursday, 18 November 2021 at 18:20:18 UTC, H. S. Teoh wrote:
> On Thu, Nov 18, 2021 at 06:03:07PM +0000, Adam D Ruppe via Digitalmars-d wrote:
>> On Thursday, 18 November 2021 at 17:59:06 UTC, H. S. Teoh wrote:
>> > I'm seriously hoping Andrei pulls off stdv2, because that's the only way I see to move forward with Phobos.
>> 
>> It's that or we fork the language and seize control then just start actually fixing things.
>
> I have to say, the thought has crossed my mind a few times.  Only thing is, this community is already so tiny, splitting it would probably mean death to both resulting dialects.
>
> Though on 2nd thoughts, forking *Phobos* could actually be viable... Even put it up on dub as a Phobos alternative and let the two compete, see which one survives.
>
>
> T

Dlang is not alone [1], but at least Evan has strong motivations behind that [2].

Forking, well ... Sociomantic tsunami (well, it was a *way* different time period) or Weka mekka ...

I still think that the first thing to do is push for a language cleanup, prior to start taking care of Phobos. Walter wandered what happened with copyctor, aren't they supposed to solve some critic low level problem paving the way to ...? The impression is that nobody have the complete and sound design in mind (no pun), but if such a case, removing complexity is better than adding. I would rather fork the frontend, and start removing things, like class alias this, shared, and (why not) start thinking if the whole const/immutable things as it is worths the complexity it brings in the codebase.

Again, my 2c ...

[1] https://discourse.elm-lang.org/t/a-process-for-core-library-fixes-and-improvements/7916/17
[2] https://youtu.be/o_4EX4dPppA
November 18, 2021

On Thursday, 18 November 2021 at 18:43:57 UTC, Paolo Invernizzi wrote:

>

adding. I would rather fork the frontend, and start removing things, like class alias this, shared, and (why not) start thinking if the whole const/immutable things as it is worths the complexity it brings in the codebase.

Simplicity is good, but don't throw out the baby with the bathwater. Just remove atomic access from shared.

Shared is needed for dealing properly with memory management improvements.