December 23, 2022
On Friday, 23 December 2022 at 20:55:58 UTC, areYouSureAboutThat wrote:
>

..many months before...

https://forum.dlang.org/post/q7lguv$12sd$1@digitalmars.com

I'm still trying to understand what it was, that he was trying to say ;-)

December 23, 2022
On 12/23/2022 12:46 PM, Hipreme wrote:
> And what problem will that solve?

People will be able to incrementally add D modules to existing C projects. Ive done such work, and C not supporting dynamic arrays is a particular nuisance. Anything we can do to make that easier will make D more attractive.


> Just check how much time D lost while trying to get into Android (which is unfortunately broken again).

The Android project was not one I was involved with, so none of my time was lost on it.


> Now we're living the Web era without real D support in WASM.

If the WASM needs help, then please help it.


> I'm still really bothered with the many people that quit the language because of stubbornness and no real comunitty problem.

I do not tell people what to work on. (Well, sometimes I do, but that doesn't work. People ask me what to work on, I give a list of things, and they go do something not on the list.) People work on what they want to. The WASM support came about because people decided to support it. I didn't tell anyone to go implement WASM support.

It would be different if the D Foundation had a budget that could spend millions of dollars on top engineers. But we don't, we rely on volunteer work done by top engineers.

Anyone is welcome to fork D. It's designed and licensed to permit this. But unless it comes with a plan for paid staff, it's hard to see how it would be different.

If there's a particular problem you need addressed, I encourage you to do one or more of:

1. file a bug report in bugzilla
2. create and submit a DIP
3. implement your idea or fix

December 23, 2022
On Friday, 23 December 2022 at 21:32:28 UTC, Walter Bright wrote:
>
> ...

What are your views on versioning ;-)

Also. The only problem with a programming language that is being developed iteratively by volunteers, apart from that itself, is that it has users ;-)

So a few people need to lower their expectations a bit...

December 23, 2022
On 12/23/2022 12:58 PM, Timon Gehr wrote:
> The technical debt in DMD is how the code and AST is structured, not the features it supports. This is much harder to clean up than removing isolated features and I think you are among the people slowing down such efforts.

Please identify any refactorings you regard as productive.


> One reason why is that there are a lot of pull requests that would be broken by large-scale refactorings. Those open pull requests are also technical debt.

Refactorings inherently break open pull requests.
December 24, 2022
On 24/12/2022 10:46 AM, Walter Bright wrote:
> On 12/23/2022 12:58 PM, Timon Gehr wrote:
>> The technical debt in DMD is how the code and AST is structured, not the features it supports. This is much harder to clean up than removing isolated features and I think you are among the people slowing down such efforts.
> 
> Please identify any refactorings you regard as productive.

It is incredibly hard to identify such refactoring when the code base is effectively in an unknown state and the things that put it into a known state you have refused.
December 23, 2022
On Fri, Dec 23, 2022 at 08:55:58PM +0000, areYouSureAboutThat via Digitalmars-d wrote: [...]
> I think you have to take Andrei at his word.
> 
> https://forum.dlang.org/post/qj18h2$8o1$1@digitalmars.com
> 
> At the same time, it's not unreasonable to wonder if there is something 'not stated' ;-)
> 
> But regardless, it can only be conjecture.

Well, Andrei *did* describe elsewhere how he became a target for criticism once he took on the helm, much of which was pretty vicious. There's only so much a person can take before the question pops up, why am I doing this, and should I be doing something else instead?


> Presumably nothing has changed further since this announcement by Andrei?

As far as I know, no.


> One thing is for sure... The future of the D Programming language is primarly stuck with Walter.

I thought Atila was supposed to be making decisions with Walter as well, it's not just Walter by himself.


> But I think some are overreacting a little.... let Walter add this thing...  I mean who cares.. really? I certainly don't.
[...]

The frustration is understandable, though. When your favorite pet peeve with D has been sitting in bugzilla for a long time, months and years, while every few months the leadership announce Yet Another New Project (which doesn't affect you nor your project nor address your pet peeve, and which in your opinion address only a niche issue), it's hard not to feel that things just aren't going in the right direction.

Meanwhile, Walter feels like he's trapped between a rock and a hard place. Spend time fixing bugs, and people accuse him of making no progress and having no strategic vision; work on something he considers strategic, and people accuse him of working on the wrong thing (in their opinion) while bugs are languishing in bugzilla.  At some point, a leader just has to be the bad guy to put down his foot and make a decision, whether or not it's the popular one. And over the years I've observed that what's popular with one segment of the D forums can be extremely unpopular to another segment; there's really no pleasing everybody on a lot of issues.

Having said all that, though, I think a lot of reactions on the forum are overblown, because in its current state, D is already pretty darned good. Sure, there are dark corners and quirks, and there are old experimental features that are not worth pushing forward and unfinished features that are extremely complex and will take a lot of time to bring to completion.  But it's easy to lose sight of how far D has come when focusing on what lies ahead.  D is plenty usable in its current state, and I've been very pleased with it.  Even though there's obviously plenty of room for improvement.

Another thing is that it's easy to underestimate the complexity and amount of effort required to implement something that, at first glance, may seem very simple.  Especially when it's your pet peeve that grates on your nerves every time you encounter it, but which is, in the grand scheme of things, not very high on the priority list. "Feature X is so straightforward, just look at languages P, Q, R, that have it too! Why can't we do it in D? Why hasn't it been done yet, it's been N years?" But feature X may interact with feature Y which may conflict with feature Z; just because something is simple in another language doesn't guarantee it's simple in this language. And just because it's theoretically easy doesn't mean the implementation will be trivial.

Add on top of this, that D, being a mainly volunteer-based project, doesn't have the big bucks of a big corporation to pay people to do what they normally wouldn't want to do, and things that require too much time and effort, or that the people who have the skills to do something about it aren't interested in it, simply don't get done.

None of this justifies the lack of progress, of course, perceived or otherwise. But it's where things are at currently, and it's what we have to live with.  It's not perfect, but D is already pretty darned good at what it does.  Moving forward, what will *really* change the current state of things is people who are willing to step up and implement stuff themselves and contribute it to the project.  Angry posts in the forum rarely bring about any long-lasting change (if any at all), as proven by history.

For example, the WASM story can really improve if there's somebody, or a couple of people, who are really invested in it, could work on making things work, package it nicely, and present it as a solution to the community.  I'd do it myself, but frankly, after dabbling with WASM for a little bit earlier this year, I don't feel particularly inclined to invest much effort into it after all: I found it to be early-adopter technology, still raw around its edges and with some basic functionality still missing / not working very well (e.g., GC support, passing any data more complex than basic POD types, interfacing with the host environment).  You still need a whole bunch of Javascript (involving a LOT of boilerplate) just to get basic functionality running, and core interactions with the host environment (I/O, access to the GPU, etc) still have a lot of gaps and holes and places where you still need lots of JS glue to make things work.  In such a state, I'm not sure how wise it is to for the D foundation to invest much resources into WASM -- a large part of it could go to waste as WASM rapidly changes in the coming years.  But if somebody who really needs D on WASM could work out something and contribute it to the community, it would make a huge difference.  Someone who is motivated enough to keep up with the latest changes in WASM and keep the D interface to it up-to-date.


T

-- 
Frank disagreement binds closer than feigned agreement.
December 23, 2022
On Friday, 23 December 2022 at 22:09:37 UTC, H. S. Teoh wrote:
> On Fri, Dec 23, 2022 at 08:55:58PM +0000, areYouSureAboutThat via Digitalmars-d wrote: [...]
>> I think you have to take Andrei at his word.
>> 
>> https://forum.dlang.org/post/qj18h2$8o1$1@digitalmars.com
>> 
>> At the same time, it's not unreasonable to wonder if there is something 'not stated' ;-)
>> 
>> But regardless, it can only be conjecture.
>
> Well, Andrei *did* describe elsewhere how he became a target for criticism once he took on the helm, much of which was pretty vicious. There's only so much a person can take before the question pops up, why am I doing this, and should I be doing something else instead?

Whatever were Andrei's reasons, I for one think it's a bit strange that people want to know. It was clear that he didn't enjoy spending his time that way. He made the right decision for himself. He donated a massive amount of time (and money) to the project. I'm grateful and wish him well.

>> One thing is for sure... The future of the D Programming language is primarly stuck with Walter.
>
> I thought Atila was supposed to be making decisions with Walter as well, it's not just Walter by himself.

D certainly has problems. To my knowledge, none of them are caused by Walter. He's not the reason people complain about IDE support. He's not the reason people complain about the ecosystem. He's not the reason there's no LTS release. The language is good enough to use and there's only so much he can do. Language changes, new features, etc. are completely unimportant if you want to explain why D isn't more popular.
December 23, 2022
On 12/23/2022 2:03 PM, rikki cattermole wrote:
> the things that put it into a known state you have refused.

I can do nothing with such generalizations. Be specific.

December 24, 2022
P1: separate out known state modules (ideally good) vs unknown state.

To turn a module into known state you must severely document it, including TODO's.

For good state: do the TODO's.

Sound familiar? Its packagerization of leaf modules.



Oh and on another note: WTF why do we have two ASTs? That's a massive technical debt to keep paying in maintenance (which we don't do).

Good example of this: https://forum.dlang.org/post/gfwduutjchvppcolsoel@forum.dlang.org
December 23, 2022
On Friday, 23 December 2022 at 22:09:37 UTC, H. S. Teoh wrote:
>
> Well, Andrei *did* describe elsewhere how he became a target for criticism once he took on the helm, much of which was pretty vicious. There's only so much a person can take before the question pops up, why am I doing this, and should I be doing something else instead?
>
>

I think both Walter and Andrei have been pretty upfront as to their 'leadership' qualities ;-)

One is a great language design hacker. Arguably, one of the best.

The other is a programmer with an OCD-like focus on 'details' (much like me).

But yes, when people have certain expectations that are not met.. they do tend to get grumpy..especially if they're volunteering their own time.. whether it Andrei or those directing criticism towards him. Walter seems to handle these contentions much better than anyone.. perhaps cause he is the ultimate gate-keeper.

>
>> One thing is for sure... The future of the D Programming language is primarly stuck with Walter.
>
> I thought Atila was supposed to be making decisions with Walter as well, it's not just Walter by himself.
>

'Technically', yes. But I don't think Atila (or anyone else in his position) is under any delusions as to what effect he can ultimately have ;-)

Personally, I'm comfortable with Walter being the ultimate gatekeeper. As he has pointed out many time, people can just fork..it.

For those that volunteer their time and effort under the delusion that this is not how it works, that is for them to deal with ;-)

Again, people should lower the expectations, and they will be much happier..and if they can't, they won't.

Let Walter fix C's biggest mistake.. but do it in D's C only, not in C. Leave C alone!