Babysitter Grammar Design
Expert skill for formal grammar design including disambiguation, precedence, and validation
install
source · Clone the upstream repo
git clone https://github.com/a5c-ai/babysitter
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/a5c-ai/babysitter "$T" && mkdir -p ~/.claude/skills && cp -r "$T/library/specializations/programming-languages/skills/grammar-design" ~/.claude/skills/a5c-ai-babysitter-grammar-design && rm -rf "$T"
manifest:
library/specializations/programming-languages/skills/grammar-design/SKILL.mdsource content
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
{ "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" } } } }