On Friday, 20 June 2014 at 18:45:15 UTC, Wesley Hamilton wrote:
On Friday, 20 June 2014 at 18:20:36 UTC, Brian Schott wrote:
On Friday, 20 June 2014 at 09:22:07 UTC, Wesley Hamilton wrote:
Thanks. Just realized that the "add grammar" button for ANTLR
grammar list is broken... so that could be why it's not
there. I'll probably still finish the grammar I'm making
since I'm 75% done. That's a great reference, though. I think
it's missing a few minor details like delimited strings,
token strings, and assembly keywords.
Keep in mind that assembly keywords aren't keywords outside of
ASM blocks. You need your lexer to identify them as
identifiers.
It should help where the Language Reference pages aren't
accurate. For example, I think HexLetter is incorrectly
defined.
If you find problems in the grammar please file an issue on
Github or create a pull request.
If you need the AST of some D code, you'll save a lot of time
by downloading D-Scanner and running "dscanner --ast
sourcecode.d > sourcecode_ast.xml"
My intent is to develop a language based on D and a compiler to
go with it. I've done something similar using ANTLR once
before. I might turn it into a BS project.
I realize assembly instruction keywords aren't actually tokens
for the lexer. Having a clean ANTLR file that doesn't include
predicates and language dependent code is nice as a starting
point, but the parser eventually needs to check validity of the
asm statements. Identifier DelimitedStrings need predicates too.
Also, TokenStrings can't be a simple parse rule since the dot
operator only applies to characters and not tokens.