Grammar
文法(Grammar)は、生成規則によって言語の正当な文構造を定義する。主な形式には BNF、EBNF、PEG がある。
目的
言語の構文を正確に定義し、パーサー生成と構文検証を駆動する。
メカニズム
BNF:非終端記号 → 終端記号/非終端記号の列。EBNF は繰り返し・省略・グループ化の糖衣構文を追加する。文脈自由文法(CFG)はほとんどのプログラミング言語を記述できる。LL/LR 文法の部分クラスは効率的に解析できる。
ユースケース
- プログラミング言語の設計
- パーサー生成
- 構文のバリデーション