「実際のコンパイラライター」はパーサージェネレータを使用するのではなく、手作りのパーサを使用すると聞いています。私はまた、パーサジェネレータが現実の言語のためにそれをカットしないと聞いてきました。おそらく、パーサジェネレータを使用して実装することが困難な特殊なケースが数多くあると思われます。私はこれについての私の疑問を持っている:プロダクションコンパイラはパーサジェネレータを使用しますか?
- を理論的には、GLRパーサジェネレータは、ほとんどのプログラミング言語の設計を処理できる必要があります(++多分Cを除いて...)
- は、私が使用して、少なくとも1つの製造言語を知っていますパーサージェネレータ:Ruby [1]。
- 私は学校でコンパイラクラスを取ったとき、パーサジェネレータを使用しました。
私の質問:パーサージェネレーターを使用してプロダクションコンパイラーを書くのは妥当ですか、コンパイラーコミュニティによる設計上の決定が不適切であると考えられるパーサージェネレーターを使用していますか?何が価値があるために
[1] https://github.com/ruby/ruby/blob/trunk/parse.y
実際のプログラマーはパンボードを使用しています。 – Woot4Moo
私は彼らがバタフライを使用すると思ったhttp://xkcd.com/378/ –
@Fichman touche私の友人 – Woot4Moo