On 12/02/2018 3:08 PM, Adam D. Ruppe wrote:
On Monday, 12 February 2018 at 14:54:48 UTC, rikki cattermole wrote:
Just because something is 'good enough' does not make it 'good enough'
for Phobos. In the words of Andrei "Good enough is not good enough",
we need to aim higher to show what we actually can do.
About 5 years ago (I think, I actually have the link on my other
computer but it is 2,000 miles away right now), Andrei said something
along the lines of "without the review process, we get junk like std.json".
Ironically, that same review process may be why we still have such
"junk". (actually personally, I don't hate std.json).
If std.xml is really so bad and has been for so long, surely we ought to
take an opportunity to change that, even if the change isn't perfect.
The implementation does not need to be perfect or full fledged to go
But if at the start of the review process it is already well known that
the public API would require a complete change to accommodate the
intended goal it is unacceptable.
Take std.experimental.allocators as an example. It currently is going
through a massive API change, but when it first got PR'd, did we know
that we should be RC'ing allocators? No of course not, otherwise we'd
have done it.
At this point in time I cannot say that dxml in good faith serves to
represent the XML specification for the D community in full. This is
unfortunately not about bike shedding.
It is one thing to bike shed features, but when scope does not match the
intended goal, we have got to be careful about what goes into Phobos.
All J.M.D. has to do to change this, is make the API match the spec (as
close as possible, without writing another parser) and separate out the
implementation into a different and very clear module (probably a sub
package) which states clearly that it is a subset with the full grammar
listed that it supports.
That way everybody is clear and we can later on get a full
implementation as part of taking it out of experimental :)