問題タブ [antlr]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - ANTLRWorks で生成されたクラス ファイルのコンパイル
ANTLRWorks を使用して ANTLR 文法を作成しています。有効な文法があり、パーサーとレクサーのソース ファイルも生成されます。生成されたコードのデバッグも試みましたが、出力はデバッガー出力で期待どおりです。
しかし、デバッガーによって生成された __Test__ クラスを呼び出そうとすると、コンソールに何も表示されません。同じクラスパスで __Test__.java を正常にコンパイルできるため、クラスパスを適切に設定しました。
問題は何でしょうか?antlr と antlrworks を使用してサンプル パーサーを作成およびコンパイルするための明確なチュートリアルはありますか?
namespaces - ANTLR v3 C# 名前空間
うまくいけば、これは本当に簡単なものです ;) 私は ANTLR3 でレクサー / パーサーの仕様を書き、CSharp2 ターゲットをターゲットにしています。生成されたコードは正しく動作しますが、ANTLR で C# 出力を名前空間に入れることができません。
文法ファイルの関連セクションは次のとおりです。
正しい名前空間を生成するために、私は試しました:
と
しかし、これらはどちらもエラーを生成し、ファイルにルールがないと主張します。
どんな助けでも大歓迎です。
c# - ANTLR v3 で生成されたパーサーまたはレクサーでアクセス指定子をどのように指定しますか?
ANTLR v3 と CSharp2 言語指定子を使用して、生成されたレクサーまたはパーサーをデフォルトのパブリックではなく内部にすることを示す方法はありますか?
名前空間は次のように指定されます。
アクセス指定子にも同様のものが存在すると思いますが、見つけることができませんでした。
c# - C# ANTLR 文法?
使用可能な抽象構文ツリー (AST) を生成し、バックエンド言語に依存しないか、C#、C、C++、または D をターゲットとする、C#用のターンキーANTLR文法を探しています。
エラー報告をサポートする必要はありません。
PS代替手段はそれほど難しくないため、修正をほとんど行うつもりはありません。
antlr - ANTLR と JavaCC のどちらが優れていますか?
懸念事項は、ドキュメンテーション/学習可能性、Eclipse の統合、ツール、コミュニティ サポート、およびパフォーマンスです (ほぼこの順序で)。
inversion-of-control - SFig 言語の構文は効率的で明確ですか (Spring-Framework の XML DSL より優れていますか)?
補遺編集:
経験豊富な Spring Framework 開発者からのフィードバックがなかったため、これに対する回答を受け入れていません。
私は、Spring-Framework の applicationContext.xml ファイル (ここでは、Spring Bean ファクトリにロードするための Bean の初期化と依存関係が記述されています) に使用する代替 DSL に取り組んでいます。
私の動機は、Spring がこの目的で XML を使用するのが好きではなく、これまでに考案された代替手段がどれも本当に好きではないということです。ここでは説明しませんが、さまざまな理由から、Groovy などの命令型スクリプト言語ではなく、宣言型言語にとどまりたいと考えています。
そこで私は ANTLR パーサー ツールを手に入れ、SFig と名付けた新しい Bean ファクトリ DSL を考案しました。これについて詳しく説明しているリンクは次のとおりです。
SFig™ - Spring-Framework の代替メタデータ構成言語
ソースコードリポジトリサイトは次のとおりです。
http://code.google.com/p/sfig/
これまでのところ、言語構文でどのようにやっているのか知りたいです。SFig は効率的でわかりやすいと思いますか? (私は現在、複数行のテキスト文字列に特に関心があります):
java - JVM 上で C を実行/解釈していますか?
JVM 上でプレーンな C コードを実行する方法はありますか?
JRuby 経由で Ruby コードを実行したり、Rhino 経由で JavaScript を実行したりできるように、JNI 経由で接続せずに実行します。
現在の解決策がない場合、何をすべきかお勧めしますか?
明らかに、それを実現するために、できるだけ多くのパーシャル ソリューションを使用したいと考えています。
ANTLR は、完全な "ANSI C" 文法実装を備えているため、開始するのに適しているようです...
ANTLR で生成されたコードを使用して、JVM 上に "おもちゃの" VM を構築する必要がありますか?
parsing - チョムスキー階層と LL(*) パーサー
プログラミング言語を解析したい。形式言語、チョムスキー階層、ANTLR についてよく読んでいます。しかし、言語 ANTLR v3 を LL(*) 再帰降下パーサーが受け入れるようにチョムスキー階層に関連付ける方法に関する情報を見つけることができませんでした。
チョムスキー型はどのように LL(*) と混ざりますか? あらゆる情報 (オンライン、本、論文) は大歓迎です。
編集:構文/意味述語とANTLRのバックトラッキングはこれにどのようにマップされますか?
parsing - ANTLR でサブシェル解析ルールを作成する
ANTLRv3 で単純な BaSH のような文法を作成しようとしていますが、サブシェル コマンド内の入力を解析 (およびチェック) できませんでした。
さらなる説明:
次の入力を解析したい:
また、コマンド パラメータなどの単純な入力を使用して内容を確認することもできます。
すなわち:
それを解析すると、次のようなツリーが生成されます
(トークンは大文字)
「$(」と「`」を無視することはできますが、次のように二重引用符で囲まれた文字列内でサブシェルが使用されている場合はカバーされません。
それで...これを達成する方法に関するヒントはありますか?