Grammar Design Skill
Overview
Expert skill for formal grammar design including disambiguation, precedence, and validation.
Capabilities
- •Write EBNF/BNF grammar specifications
- •Design unambiguous grammars
- •Handle operator precedence and associativity
- •Analyze grammar conflicts
- •Design grammar for specific parser classes (LL, LR, PEG)
- •Document grammar with examples
- •Design syntax for common language constructs
- •Handle grammar evolution and backwards compatibility
Target Processes
- •language-grammar-design.js
- •lexer-implementation.js
- •parser-development.js
Dependencies
Parsing theory literature (Dragon Book, Parsing Techniques)
Usage Guidelines
- •Notation: Use standard EBNF notation for grammar specifications
- •Disambiguation: Make grammars unambiguous or document precedence rules
- •Parser Class: Design grammar to fit target parser class (LL(k), LALR, PEG)
- •Examples: Include examples for all grammar rules
- •Evolution: Plan for backwards-compatible grammar evolution
Output Schema
json
{
"type": "object",
"properties": {
"notation": {
"type": "string",
"enum": ["ebnf", "bnf", "peg", "antlr"]
},
"parserClass": {
"type": "string",
"enum": ["ll1", "llk", "lalr", "glr", "peg"]
},
"productionCount": { "type": "integer" },
"conflicts": {
"type": "array",
"items": { "type": "string" }
},
"generatedFiles": {
"type": "array",
"items": { "type": "string" }
}
}
}