The Atom Consists of Protons, Neutrons and Electrons
Andrei Alexandrescu
SeeWebsiteForEmail at erdani.org
Wed Feb 6 08:06:21 PST 2013
On 2/6/13 12:47 AM, Zach the Mystic wrote:
> At first I was upset.
I feared so.
> Then I responded in greater detail.
I'm glad you did!
> There's a degree to which the phase of development D is in seriously
> affects the developers' willingness to try new things. And the concern
> that some dark corner of the suggested enhancements will limit their
> usefulness is certainly legitimate. For my part, I'm ready to commend
> the fate of this proposal to a higher power, be it human or divine.
[snip]
So you think you stumbled upon a great idea, one that deserves being
pursued. So then push it until it breaks, you break, or the others break
:o).
One possible angle is that everybody has missed that particular point in
fifty years of language design. I believe this has happened, but is very
rare so you need a stronger argument than that.
I noticed that a good thing to do is prove or at least argue that the
feature has a positive impact on a desirable objective. For example,
there's this great quote by Bob Martin that goes like "all software
engineering techniques address at the core dependency management". That
goes a lot about languages, too, so if you show that your technique
improves dependencies then it's a net win.
Consider e.g. "final switch" as a simple example. When we introduced it,
the argument was that it improves modularity by making compilation fail
whenever new members are added to the enum, thus forcing appropriate
code updates. Thus, modularity is improved. So it would be great to find
such an objective criterion and show how your feature makes good steps
toward that.
Andrei
More information about the Digitalmars-d
mailing list