November 01, 2021
> >

Alexandrescu wrote:

C++20 is very powerful, d can't be complacent. We should learn the advantages of C++. We should also introduce powerful features such as ... and concept and coroutine etc. What a convenient tool. Why not learn it?
Like manu made a proposal, why doesn't Walter accept it?
As a long history language, C++ is undergoing radical improvement, so should we. Just provide a transition period of about 5~6 years.
And C++23 reflection library, is coming.

October 31, 2021
On 10/31/21 8:59 PM, Adam Ruppe wrote:
> On Monday, 1 November 2021 at 00:05:30 UTC, Andrei Alexandrescu wrote:
>> while we were wringing our hands about breaking the behavior for like a dozen users.
> 
> If you agree there are only like a dozen users, why not just make the changes and be done with it? Why worry about preserving v1 behavior at all? (Worth noting you can always just download an old version too.)

Thanks for asking. Not always a dozen users, and often different dozens for each little change. It just doesn't scale.
October 31, 2021
On 10/31/21 9:35 PM, zjh wrote:
>>> Alexandrescu wrote:
> 
> `C++20` is very powerful, `d` can't be complacent. We should learn the advantages of `C++`. We should also  introduce powerful features such as `... `and `concept` and `coroutine` etc. What a convenient tool. Why not learn it?

The best aspect of C++ is the people working on it.

I think the very best work of my entire career is on the D language, by far.

Many folks much better than me have done the best work of their entire career on the C++ language, by far.

There are very good folks working on C++ coroutines. We just don't have very good folks working on D coroutines. Our haggling about improving the process etc cannot override a simple reality: we don't have all that ammo.

I think what we have is better than C++ concepts. I wouldn't touch C++ concepts. They are adding a lot of aggravation for very little power. We have the opposite ratio.

> Like `manu` made a proposal, why doesn't `Walter` accept it?

Which one? Manu made a number of proposals, and most if not all have been integrated in the language in a form of another, and for the better.

> As a long history language, C++ is undergoing radical improvement, so should we. Just provide a transition period of about `5~6` years.
> And `C++23` reflection library, is coming.

We should. It's all about good folks working on D. No amount of telling what we should be doing will make that unnecessary.
October 31, 2021
On 10/31/21 9:55 PM, Andrei Alexandrescu wrote:
> I think what we have is better than C++ concepts. I wouldn't touch C++ concepts. They are adding a lot of aggravation for very little power. We have the opposite ratio.

Forgot to mention: this is proof that even great folks and groups of folks may completely miss the point.
November 01, 2021
On Monday, 1 November 2021 at 00:05:30 UTC, Andrei Alexandrescu wrote:

> Given the above and also the perennial stagnation the D library has been in, I'd say it's version or die.

I have to admit that at times D feels like Common Lisp. A nice language for when it was designed, but now one that values stability over all else, at the expense of building on a good foundation. The death of Common Lisp was the standard. Something similar happened at some point for D but without standardization.

> There have been discussions about how to improve phobos. There are things many agree:
>
> - get rid of autodecoding
> - reduce gratuitous use of the GC
> - improve safety
> - be less liberal with throwing
> - get rid of a lot of clowny support for enums a la WhateverSomethingOf
> - improve the range interface
>
> Then there's a long tail of desirable things, where everybody could add their own.
>
> These have been discussed for literal years. And whenever someone said "X would be so much nicer", someone else would say "but that would break compatibility" and that would be the end of it.

Yep. This is the ordinary evolution of a language, but D has not figured out how to evolve. Always a false dichotomy where it's either a neverending stream of breaking changes or it's 100% stability.

October 31, 2021
On 10/31/21 10:27 PM, bachmeier wrote:
> Always a false dichotomy where it's either a neverending stream of breaking changes or it's 100% stability.

Versioning std will take us out of that rut.
November 01, 2021

On Monday, 1 November 2021 at 01:55:22 UTC, Andrei Alexandrescu wrote:

>

On 10/31/21 9:35 PM, zjh wrote:

Manu's ... proposal is very convenient. It is orthogonal to the array. It provides a variety of writing methods. With ..., many implementations are very concise. It is basically a must for C++ users.
The C++ concept is also very convenient. When writing constraints on a separate T type, there is no need to write an if... behind. With a little effort, users can feel comfortable.
What we need is a good organization and gradually achieve the priority goals. In the d Forum and the D home page , Users can see the changes in the future and now. We need to attract excellent people, we need to do a good job in the details and let d users know the strength of d.
We should become stronger in being good at (metaprogramming) and fill the gap in the obvious weakness(GC). In this way, naturally, when others think of metaprogramming, they think of d. If they can use metaprogramming, they can naturally be regarded as excellent.

November 01, 2021

On Monday, 1 November 2021 at 03:34:46 UTC, zjh wrote:

>

On Monday, 1 November 2021 at 01:55:22 UTC, Andrei Alexandrescu

We don't need to be better than C++ in every aspect. We just need to be better than C++ in the most important / commonly used direction. In this way, users will follow you.
We can investigate the C++ users what they think are the most important / commonly used, and then we list them on the vision and work hard on it. Then the C++ users who are interested in this aspect will naturally come.

November 01, 2021

On Monday, 1 November 2021 at 03:49:34 UTC, zjh wrote:

Library authors are more important than pure users because libraries bring users.
Therefore, we should give priority to the satisfaction of Library authors users.
Similarly, we should give priority to satisfying C++ users, because most C++ users write libraries.

November 01, 2021

On Monday, 1 November 2021 at 03:34:46 UTC, zjh wrote:

>

Manu's ... proposal is very convenient.

That DIP hasn't been accepted or rejected because it is stalled waiting for Manu. I will most likely be marking it as "Abandoned" in the near future.