On 9/6/11 1:00 AM, Walter Bright wrote:
On 9/5/2011 7:48 PM, Andrei Alexandrescu wrote:
I agree with all of the above. However, as is often the case, there's
more than
one side to the story.

Bad APIs have their costs too. We can't afford to have an XML library
that
offers few and badly packaged features and comes at the tail of all
benchmarks.
We also can't afford a JSON library that is poorly designed and badly
written.
Ironically, the costs mostly manifest the same way: people will decide
not to
use D because it "lacks good libraries" and "is quirky to use". In
many ways a
language's standard library is a showcase of the language, and to a
newcomer an
inconsistent and awkward standard library affects the perception of the
language's quality.

I agree that the XML and JSON libraries need to be scrapped and
rewritten. But simply changing the names of otherwise successful APIs is
not worth while.

I agree we should be increasingly hawkish about such changes.

c) possibly create programs a la gofix that help migration.

gofix cannot fix books, articles, blogs, and presentations.

Furthermore, in order to work successfully, gofix needs to be a complete
D front end, capable of handling both the old and the new stuff. Doing a
perl script would be a disaster. It's a substantial project, has a high
risk of inadequacy, and I suspect our resources are better spent elsewhere.

I'm not so sure. We're experiencing an unprecedented surge in participation to all aspects of the D programming language, and I believe you and I should start thinking differently. A certain change of phase happened to me a couple of months ago, when I commented about some fix that removed an undue limitation: "sounds good, but Walter has many other things on his plate more important than this". Within hours, the fix was available as a pull request.

In this case, if one or more persons is/are determined enough to create dfix, it will happen regardless of whether you or I believe it's the optimal resource allocation.

Considering also the problems people have running dmd and getting it to
find their imports and libraries, add in having to run 'gofix' over
their source code first, then patch up what gofix goofed up, seems a
stretch.

I do agree dfix must work at least as well as Apple hardware :o).


Andrei

Reply via email to