私はGLRパーサジェネレーターを書いていますが、インターネットと枯れ木の種類(オタクの話に慣れていない人のための本)の両方で、このアルゴリズムに関連するリソースについてアドバイスを求めています。
BisonがGLRパーサーを生成できることは知っています。また、GPLの下にある場合は、そのコードを調べることができますが、アルゴリズムの完全な説明があると便利です。
それで、誰かが私が利用できる良いリソースを知っていますか?ありがとう。
私はGLRパーサジェネレーターを書いていますが、インターネットと枯れ木の種類(オタクの話に慣れていない人のための本)の両方で、このアルゴリズムに関連するリソースについてアドバイスを求めています。
BisonがGLRパーサーを生成できることは知っています。また、GPLの下にある場合は、そのコードを調べることができますが、アルゴリズムの完全な説明があると便利です。
それで、誰かが私が利用できる良いリソースを知っていますか?ありがとう。
私がオンラインの前に出くわしたいくつかの良いもの:
詳細については:
そして、私は3番目のオープンソースGLRパーサーであるDParserを知っています。
Adrian Johnstoneは、GLRアルゴリズムの高度なバージョンに関する多くの研究を公開しています。彼の出版物のウェブサイトはおそらく興味深いリソースになるでしょう。
私が今まで見た中で最高の説明は、アルゴリズムの各ステップを説明する写真とともに、この本に含まれています。
擬似コードについては、ソースにアクセスしてください:富田による一般化されたLR解析、70ページかそこら。Farshiの論文には簡潔な説明が含まれています。
これは、私がqb.js( javascriptのqbasic)で試した手法の1つです。
私が知っていることから、それはあいまいさに遭遇した場合を除いて、LALRパーサーと同じように機能します。
その場合、基本的にその時点で可能なオプションに対応する個別の解析に分割され、それらをタンデムで続行します-解析が失敗した場合(不正な要素に遭遇したため)、それは単にドロップされます。以前のあいまいさを誤って推測します。
最後に、1つを除くすべての解析が終了しているはずです。残りの解析は、これらのあいまいなポイントの「正しい」解析です。