Delphiのパーサージェネレーター?
-
12-09-2019 - |
質問
Win32 Delphiコードを生成するパーサージェネレーターをお勧めできますか?私がやろうとしているのは、単純なドメイン固有の言語を作成することです。
解決
DSLはどれくらい複雑ですか?
私は、私たちが使用するいくつかの社内COM生成ツールをサポートするために、ニューデルファイリドル言語のパーサー(Delphi)を作成しました。
私のアプローチは、ANTLRを使用して、私が持っていたさまざまなテストファイルを解析するものがあるまで構文ルールを回避することでした。次に、再帰的な降下パーサー(ANTLRによって生成されたJavaに基づいて)を手作りしました。また、プロジェクトでCastalia Delphiパーサーを使用していたので、語彙分析器をその点に基づいています。
再帰的な降下パーサーは、実際には非常に単純です(しかし退屈な:-))手動で書くことができます。
他のヒント
COCO/RのDelphiバージョンは非常に問題ありません:
http://www.ssw.uni-linz.ac.at/research/projects/coco/
最も顕著なのは、パットテリーのもの:
私はこれをまったく試したことがありませんが、ドキュメントを読んでいる間に情報に気づきましたが、あなたが取得できるドキュメントの中でfastscriptに ここ, 、パーサーを使用して、XMLファイルで指定する独自の言語を作成できると言います。これにより、使用できるものが得られるかもしれません。
私は見つけました Delphi 3.1.1のANTLR.
Delphi Target 3.1.1のSharpplus ANTLRは、認識者、通訳者、Delphiのコンパイラを構築するためのフレームワークを提供する言語ツールです。
それは商業製品です。それがどんなものかわかりません。