6

しばらくの間、antlr と javacc/freecc を使用してきました。ここで、antlr 文法を使用して多数のパーサーを作成する必要がありますが、そのようなパーサーは ruby​​ lang で作成する必要があります。

私はグーグルで検索しましたが、何も見つかりませんでした。Antlr文法を使用してパーサーを作成するRubyパーサージェネレーターはありますか? たくさんあるとしたら、どれが一番いいと思いますか?

ティア・パオロ

4

3 に答える 3

9
  1. JRubyを使用し、ANTLR パーサーを Java に保持することで、簡単に回避できる場合があります。
  2. あなたの仕事にPEGで十分なら、treetop新しい柑橘類は ruby​​ist が使用する一般的なツールです。
  3. プロジェクトの調査中に私が掘り下げた他のパーサーは、 peggyKanoccRaccです。

私のプロジェクトでは、梢を選びました (柑橘類はまだ生まれていません)。

于 2010-06-15T08:21:28.373 に答える
3

ANTLR Ruby を使用しない理由: http://www.antlr.org/wiki/display/ANTLR3/Antlr3RubyTarget ( http://split-s.blogspot.com/2005/12/antlr-for-ruby.html )

ここにもベータ版があります: http://rubyforge.org/projects/antlr3/

于 2010-06-15T08:15:17.683 に答える
1

Java または C の ANTLR を使用してパーサーを生成し、JRuby またはFFIを使用して Ruby プログラムから呼び出すこともできます。

これにより、パフォーマンスが向上するはずです。これは、解析する入力が多い場合に大きな利点となる可能性があります。

于 2010-06-15T08:25:47.027 に答える