■ [prog] 正規文法、文脈自由文法、解析表現文法 について調べたのでまとめ。それぞれ Regular Grammer(RG), Context Free Grammer(CFG), Parsing Expression Grammer(PEG)とも。 解析表現文法はPEGって呼ばれる方がずっと多いよね。てかPEGが「文法」の一種であることを今まで分かってなかった(^^; 「パーズ関係の新しいやつでしょ」みたいな。 正規文法 < 文脈自由文法 =?< 解析表現文法 の順で、表現できる言語が増える。 (追記:CFG<PEGであるとはまだ証明されていないそうです(コメント欄を参照)) 正規文法はいわゆる正規表現のもとになったやつ。(現在のLLのRegexpは拡張されまくりなので正規文法以上のものも解析できる) 文脈自由文法はBNF記法で書けるやつ。 文脈自由文法(のサブセット)の解析方法と
![Route 477(2008-10-23)](https://cdn-ak-scissors.b.st-hatena.com/image/square/b0dd2a08b2c0fff30d70543ed7fa340ebfeb5697/height=288;version=1;width=512/https%3A%2F%2Froute477.net%2Fd%2Fassets%2Fogimage.png)