Why is D unpopular

Mike Parker aldacron at gmail.com
Wed Jun 15 04:28:25 UTC 2022


On Tuesday, 14 June 2022 at 19:22:34 UTC, mee6 wrote:

>
> Having to convince those two is a waste of time.

In the early days of D, new features could get into the language 
by persuading Walter here in the forums. The community was tiny, 
and such discussions were easy to follow. That's why we have 
templates, the is operator (i.e., `c is null`), mixin templates, 
and more. As time went by and the language became more complex, 
Walter had to raise the bar on letting new features in out of 
necessity (my private nickname for him back then was "Dr. No").

Moreover, at some point the community became too large for 
focused feature discussions. They were scattered across threads, 
rambling off topic, and difficult to follow (like this whole 
private-to-the-module discussion going on now).

The DIP was an initiative started 100% by *the community*. [The 
Rationale of DIP 1](https://wiki.dlang.org/DIP1) shows why:

> Keeping track of improvement proposals is very hard and not 
> well documented organized. Having a template (and a process) 
> for such proposals can improve the situation significantly.

This forum discussion is where it came together:

https://digitalmars.com/d/archives/digitalmars/D/new_DIP1_DIP_Template_92908.html

Do a search on the following page for DIP and you'll see there 
were 6 DIPs "submitted" within a month of that post (and two more 
over the next three months):

https://digitalmars.com/d/archives/digitalmars/D/index2009.html

This was all community driven. There was no buy-in from Walter at 
that point. There's even one post there from [someone asking for 
Walter to declare DIPs 
"official"](https://digitalmars.com/d/archives/digitalmars/D/Wiki4D_Walter_and_DIPs_93463.html).

There are plenty of DIP discussions in the archives, but it was 
never a formal process. Of course, there was some frustration 
because of that. So eventually, one volunteer stepped up and 
formalized the process with Walter and Andrei's blessing:

https://www.digitalmars.com/d/archives/digitalmars/D/announce/Announcing_new_DIP_handling_process_44502.html

```
There are two main goals for going this way:

1) Ensure communication between language authors and DIP authors,
establish better sense of actually contributing as opposed to 
simply
throwing ideas into the black box.

2) Improve overall quality of DIP documents to the point where 
language
authors can reasonably review them without spending too much time 
on
trivialities.

Additional benefit I am hoping for is to have a centralized place 
to
subscribe to learn about all coming major changes coming to 
language for
those who can't keep up with NG regularly.
Walter and Atila are the maintainers. If you want a new feature, 
provide an argument that convinces them of its benefits vs. its 
costs via the DIP process. That's the bar.
```

And he added this note:

```
I will act as a DIP manager for the time being. Please note that 
role of
DIP manager does not imply any decision power regarding DIP 
approval, it
remains an exclusive domain of language authors.
```

I quote that for the last bit: "it remains the exclusive domain 
of the language authors."

The DIP process was created by the community as a way to refine 
ideas for new features and ultimately present them to the 
language authors for consideration. If you want to add a new 
language feature, then this is the mechanism to do it, and Walter 
and Atila are the two who you need to convince.


More information about the Digitalmars-d mailing list