Civility

Ola Fosheim Grøstad ola.fosheim.grostad at gmail.com
Sun Jun 26 12:54:42 UTC 2022


On Sunday, 26 June 2022 at 12:24:11 UTC, zjh wrote:
> In `D`'s what partion do you think can be `simplified`?
> Language is borned to be complex, because you have `a variety 
> of` needs to meet.

Depends on what we mean with «complex». Simple languages can be 
powerful (Scheme/Prolog). Primitive languages can be complex to 
use (bad syntax, inconsistencies, special cases).

The easiest way to avoid being perceived as complex is to not 
deviate from other languages on basic stuff and have a high 
degree of consistency internally. The less additional things you 
have to remember, the less complex it will feel.

Right now the most important thing is to not add additional 
complexity and still solve remaining issues. Then one can take 
one step back later and do a syntax cleanup when all the 
semantics are right.

> What is needed is reasonable arrangement of 
> `time/manpower/money`.

Yes, well, that is an issue. Not many people will volunteer to 
work on the DMD code base without a cleanup. And not many people 
will volunteer to work on SDC until it has reached a more mature 
stage as they don't know if it will reach completion…

It is a [catch-22 
situation](https://en.wikipedia.org/wiki/Catch-22_(logic)) that 
can only be fixed by the core team setting a new direction.

> First sort the `'todo priority'`, and there is no one so far.
> I didn't see the `D's task list`.

Yes. The problem is that you need a high level design that people 
believe in first. I don't believe in @live or DIP1000 or 
Rust-semantics.

I could believe in actor-local GC. I could believe in concurrent 
GC. I could believe in ARC.

But with no high level design decision by the core team, not many 
will be motivated to move as they would be alone and would not 
know if their efforts would be undermined by new language 
semantics coming out of nowhere.

So the «do it yourself» does not work in this case, it is a high 
risk to take.

It is lower risk to go create your own language.


More information about the Digitalmars-d mailing list