Official D Grammar

Stewart Gordon smjg_1998 at yahoo.com
Tue Apr 2 06:21:30 PDT 2013


On 02/04/2013 00:18, Brian Schott wrote:
<snip>
> I think that we need to be able to create a grammar description that:
> * Fits in to a single file, so that a tool implementer does not need to
> collect bits of the grammar from the various pages on dlang.org.
> * Can be verified to be correct by an existing tool such as Bison,
> Goldie, JavaCC, <your favorite here> with a small number of changes.
> * Is part of the dmd/dlang repositories on github and gets updated every
> time the language changes.
<snip>

Indeed, the published grammar needs to be thoroughly checked against 
what DMD is actually doing, and any discrepancies fixed (or filed in 
Bugzilla to be fixed in due course).  And then they need to be kept in sync.

Has the idea of using a parser generator to build D's parsing code been 
rejected in the past, or is hand-coding just the way Walter decided to 
do it?  Is the code any more efficient than what a typical parser 
generator would generate?

And all disambiguation rules (such as "if it's parseable as a 
DeclarationStatement, it's a DeclarationStatement") need to be made 
explicit as part of the grammar.  I suppose this is where using Bison or 
similar would help, as it would point out any ambiguities in the grammar 
that need rules to resolve them.

Stewart.


More information about the Digitalmars-d mailing list