Handling constructive criticism
Scott S. McCoy
tag at cpan.org
Thu Apr 17 00:12:32 PDT 2008
On Thu, 2008-04-17 at 07:21 +0900, Bill Baxter wrote:
> The current problem seems to be the opposite to me. The problem *is*
> that Walter doesn't think D is good enough, and so he think he needs to
> add ingredient C to woo large-systems developers or ingredient P to try
> to leap ahead of the competition. If anything he's aiming too high,
> into territory that no one knows anything about, and which may pan out
> to be ultimately not so useful. Or it may pan out to be fantastic. I
> don't think anyone knows.
I've sort of had a similar feeling. D has a quite astounding feature
set, and is in a really strong position. And unlike many languages
actually has a solid reference implementation. Unfortunately I've
noticed a lot of corner-case sloppiness, some rather unfortunate syntax
which seems to need be revisited, and a few other odds and ends which
really need cleaning up -- but never the less, time is spent moving
forward, not perfecting what is.
There is a lot of perfecting what is that really aught to be addressed,
I find, and I think if not a single additional feature was added to D
it's already in an amazing position. And a lot of the things which are
done right in D (method references as delegates that actually work, for
instance) are really strong enough that if realized correctly through
the framework development that could easily take shape around them,
could push D quickly into larger scale adoption.
However, I see all this talk about adding strange concepts like "pure
functions" which add inane complexity to the language, meanwhile
interesting corner cases about "auto" and various other behaviors -- as
well as various implementation bugs -- remain. Syntactical sores stick
around (Foo!() comes to mind) and nobody worries about them. D has a
lot of promise, I feel, and has a better feature-set for working with it
than any other language I've seen to-date. It seems absolutely
picturesque for business infrastructure software; among other things,
and I'd love to be able to employ it in the real world. To get that
though, I need to see adoption move at a better pace.
The only thing holding me back, as a professional software architect,
from trying to get D used at my day job is literally adoption. const is
nice, and I find the feature rather exciting -- but to be honest, it's
not nearly as important as being able to point to articles showing other
companies are using D. And I think we'll see them as we see better
programming frameworks and libraries take shape around D. I think we'd
see more of that if we cleaned up the miscellaneous issues, fixed a few
of the syntax ambiguities, and got a focus on a solid, stable,
non-tumultuous language specification that people can build on without
fear of future change.
Fear of change is a major issue, for any language looking for adoption.
If the specification is changing rapidly, or a large "bigger, better"
version is looming in the distance (especially of the language is-- and
after that some stability might come about. already not particularly
well established) then it provides reason for reservation for going and
say, building a good web service stack and WSDL-based code generator for
D. If D 2.0 is "so close", why not wait for that?
At the same time, the molasses rate of change that languages like C, C++
and Java have is not something D should adopt by any means. But
nevertheless, I'm really hoping that once D 2 is ironed out -- it will
have a lot of the corner cases dealt with and hopefully some of the
syntax cleaned up -- and after that some stability might come about.
Cheers,
Scott S. McCoy
More information about the Digitalmars-d
mailing list