I'm implementing a packrat parser in Scheme. I'm at the point of writing a bootstrap parser in Scheme for PEG, and my bootstrap parser is basically working.
I haven't yet decided on the syntax for embedding code in the parser. My only example for doing this is peg/leg: http://piumarta.com/software/peg/peg.1.html which encloses code in {} brackets and permits references to parts of the parse tree with <>: { action } Curly braces surround actions. The action is arbitray C source code to be executed at the end of matching. Any braces within the action must be properly nested. Any input text that was matched before the action and delimited by angle brackets (see below) is made available within the action as the contents of the character array yytext. The length of (number of characters in) yytext is available in the variable yyleng. (These variable names are historical; see lex(1).) < An opening angle bracket always matches (consuming no input) and causes the parser to begin accumulating matched text. This text will be made available to actions in the variable yytext. > A closing angle bracket always matches (consuming no input) and causes the parser to stop accumulating text for yytext. What else is out there? Is this something reasonably standard or does every tool do something different? -Alan -- .i ko djuno fi le do sevzi _______________________________________________ PEG mailing list PEG@lists.csail.mit.edu https://lists.csail.mit.edu/mailman/listinfo/peg