Official stdx

John Colvin john.loughran.colvin at gmail.com
Fri Oct 4 03:49:57 PDT 2013


On Friday, 4 October 2013 at 10:30:56 UTC, Joseph Rushton 
Wakeling wrote:
> On 04/10/13 12:02, John Colvin wrote:
>> I propose that the current review process be redirected to a 
>> new target package
>> in the phobos repo, stdx, which would then have a separate 
>> review process for
>> inclusion in std.
>
> As you say, this has been proposed before and I think the 
> objection was along the lines that in practice, so many people 
> would just use stdx (because they wanted those features NOW, 
> NOW, NOW!) that you'd have the same backwards compatibility 
> issues arising there -- you'd wind up with the same fear of 
> breaking change and deprecation as we currently have in the 
> standard library

The lack of promise of API stability in stdx would have to be 
very explicit and obvious. The maintainers of phobos would have 
to remain stalwart in preventing any alteration of this, whether 
de facto or deliberate.

> and it would also cause breaking change if stdx.somemodule was 
> approved and moved to std.somemodule.

That is the least bad type of breaking change.

> I remember someone pointed to a similar "experimental" module 
> namespace in Java, which effectively became a standard 
> namespace in this way.
>
>> Stdx would occupy a space between phobos and unaffiliated 
>> packages, allowing for
>> subtle (i.e. missed during initial review) but critical 
>> problems requiring
>> breakage to be identified BEFORE inclusion in the standard 
>> library proper. I
>> believe providing this official stepping stone for new modules 
>> will result in
>> significantly wider usage and testing, benefiting phobos, D 
>> and it's community.
>
> There is an alternative risk -- that people will be more 
> inclined to just throw stuff over the wall into stdx because, 
> hey, it's an experimental/testing area, the whole idea is for 
> people to try out imperfect code and work out what's wrong with 
> it ...

The bar for passing initial review should remain exactly where it 
is now. Nothing should be allowed in to stdx unless it appears 
for all intents and purposes to be a finished, high quality 
module that would - to the best of the evidence available - be 
fine to add straight to phobos. The purpose of stdx is to gather 
more evidence before making the commitment.

>> I am aware that this is not a new idea at all. I thought it 
>> was worth presenting
>> with a clean slate.
>
> I've presented Devil's Advocate positions above, but of course 
> it was worth re-raising the idea.  Anything that does in 
> practice raise the bar of Phobos quality is very welcome.


More information about the Digitalmars-d mailing list