Grammar
Una gramática define la estructura legal de las oraciones de un lenguaje mediante reglas de producción; las formas comunes incluyen BNF, EBNF y PEG.
Propósito
Definir con precisión la sintaxis de un lenguaje, impulsando la generación de parsers y la validación sintáctica.
Mecanismo
BNF: no terminal → secuencia de terminales/no terminales. EBNF añade azúcar sintáctico de repetición/opcional/agrupación. Las gramáticas libres de contexto (CFG) describen la mayoría de los lenguajes de programación. Los subconjuntos LL/LR se pueden analizar eficientemente.
Casos de uso
- Diseño de lenguajes
- Generación de parsers
- Validación sintáctica