New DIP73: D Drafting Library

Zach the Mystic via Digitalmars-d digitalmars-d at puremagic.com
Thu Feb 5 16:08:37 PST 2015


On Thursday, 5 February 2015 at 23:35:04 UTC, Dicebot wrote:
> On Thursday, 5 February 2015 at 18:23:19 UTC, Zach the Mystic 
> wrote:
>>> 1) All Phobos proposals must go through 
>>> std.experimental.logger
>>> 2) It must implement something generally desired in Phobos
>>> 3) Implementation is supposed to be at least stable enough to 
>>> not undergo a full rewrite after inclusion. Major API changes 
>>> are acceptable.
>>> 4) Before DMD/Phobos release is made existing packages that 
>>> feel stable can undergo a formal review for inclusion in 
>>> Phobos main package
>>
>> It seems to me that number 2 is wrong. It doesn't matter what 
>> is generally desired. The final say depends completely on the 
>> leadership. Yes or No has to come from above. Or am I wrong 
>> about this?
>
> No, you get it wrong. This is decided exclusively community 
> voting. Andrei or Walter can veto something that they don't 
> want but their explicit approval is not required.

I'm surprised. From my point of view, yours is a bad strategy. 
What bothers me is how could a module just take Walter or Andrei 
completely by surprise and still end up in the standard library? 
I honestly wouldn't want that, and yet apparently it's possible. 
Now don't get me wrong. I do think listening to the community is 
critical, and allowing a new module because of overwhelming 
popular demand is also acceptable, provided there's no reason to 
veto it.

But to me, that veto means a whole lot. It means that people 
can't know what will be rejected or accepted unless told, and in 
the absence of being told, the motivation to work on something 
may dry up. That's what I'm trying to prevent by my strong 
insistence on the necessity of leadership.

The way I see it, the conversation about what is suitable for a 
standard library should come first. Someone should propose 
something, get a signal on prospects for inclusion, and then use 
that signal do determine whether to keep developing the library 
for phobos or not. Without the signal, how will they know whether 
to develop it for phobos or just for their own 3rd-party use? How 
do you get a clear signal when the module is only voted on at the 
*end* of the process?


More information about the Digitalmars-d mailing list