Biggest Issue with D - Definition and Versioning

Peter Alexander peter.alexander.au at gmail.com
Thu Jan 12 13:55:26 PST 2012


On 12/01/12 5:54 PM, Walter Bright wrote:
> On 1/11/2012 11:16 PM, Jacob Carlborg wrote:
>> That's the whole point. It's not clear what the actual specification
>> IS. Is it
>> DMD, dlang.org or TDPL?
>>
>
> It's the "Language Reference" section on dlang.org.

Yes, but there's differences between the language reference and what DMD 
implements. Sometimes the language reference is right, sometimes DMD is 
right. The point is, there's no way for us to know. Only you can decide 
what is right.

One example off the top of my head (there are many more):

 From the Lexical page on dlang.org

q{ @ } // error, @ is not a valid D token

But DMD accepts this.

How do we know who is right and who is wrong? Should DMD reject that, or 
is the spec wrong?

The problem is exacerbated by the fact that DMD has lots of language 
bugs, so many people assume that the spec is right and DMD is wrong, but 
it's often the other way round!

You've said to post bugs, but these don't receive any attention. For 
example, here's two bugs about the lack of documentation on .stringof, 
one from 2009 and one from early 2011:

http://d.puremagic.com/issues/show_bug.cgi?id=3007
http://d.puremagic.com/issues/show_bug.cgi?id=5404

Neither of which have received any comments or clarifications.

If things are documented then the community will implement them and the 
community will write tutorials about them. I suspect the #1 reason for 
lack of tutorials is because no one knows what D is, except you.

We need a real, up to date, and detailed language specification! Leave 
the implementation to us.

In fact, in many cases, all we need is a "DMD is right in this case" and 
we can even do the documentation!

I've already submitted a pull request for the q{ @ } issue above. Can 
someone please either reject it saying that it is wrong, or accept it so 
that we can move towards a more complete specification.

https://github.com/D-Programming-Language/d-programming-language.org/pull/27


More information about the Digitalmars-d mailing list