What are the worst parts of D?

ketmar via Digitalmars-d digitalmars-d at puremagic.com
Wed Sep 24 14:53:24 PDT 2014


On Wed, 24 Sep 2014 14:56:10 +0000
Don via Digitalmars-d <digitalmars-d at puremagic.com> wrote:

> "Most D code is yet to be written."
and it will be wrtitten in a language with heavy legacy. it's the same
thing as with c++ interop: pleasing imaginary future users at the
expense for current users. even small changes that either breaks
something or even adds a more sane/more consistent way to do some small
thing without breaking the old way have virtually no chances to get
into mainline.

see, for example, function attributes. neither patch that allows to use
'@' in front of "pure" and "nothrow" nor patch that allows to omit "@"
for "@safe", "@trusted" and so on was "blessed". they were destroyed
almost immediately: "it's not hard to type that '@'", "there is nothing
wrong in such inconsistent syntax", "newcomers will be confused by
having two syntaxes" (as if they are not confused now, failing to
understand why some of the attributes requires "@", and some can't be
used with "@"!).

or 'const' function attribute, which, i believe, should be forbidden as
prefix attribute. i.e. 'const A foo ()' should be compilation error.

or having no way to cancel "final:" and "static:" (this annoys me
virtually each time i'm writing some complex structs/classes).

and so on. i'd say "change this while we can!" but no, imaginary future
users will be dissatisfied.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 181 bytes
Desc: not available
URL: <http://lists.puremagic.com/pipermail/digitalmars-d/attachments/20140925/c2092a48/attachment.sig>


More information about the Digitalmars-d mailing list