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