D's greatest mistakes

Andrei Alexandrescu SeeWebsiteForEmail at erdani.org
Sun Nov 28 21:45:50 PST 2010


On 11/28/10 10:19 PM, Jack wrote:
> The post "C#'s greatest mistakes" prompts/begs this post. Have at it,
> pick up the ball and run with it, don't be shy. I expect Walter and
> Andrei to answer (if Walter and Andrei so dare!) after others' posts have
> stopped or stagnated into that cesspool of threaded discussion that is
> "the subthread" or "tangential thread" (which surely needs a rock
> anthem).

Hrm, excellent challenge. I can't think of a ranking of mistakes right 
now, but some that come to mind are:

* Not fixing switch

* scope variables

* delete (generally: an incompletely thought-out approach to garbage 
collection)

* typedef

* Escape rules are too lax (e.g. things could be a lot better if ref 
results couldn't be escaped)

* Eponymous templates can't have any members

* Template pattern matching is incomplete

* Overloading of templates with non-templates is poor


I'll think of more annoyance factors in writing D code. I know the last 
two are an issue but not a very practical one. The rest I'm doing my 
best to improve or eliminate before the broken behavior becomes too 
encroached.


Andrei


More information about the Digitalmars-d mailing list