Xtext、Spoofax、JetBrains の MPS などの言語ワークベンチ ツールを使用した経験のある人はいますか? 試してみようと思っていますが、さまざまなツールの適切な比較を見つけるのに苦労しています。それぞれの長所と短所は何ですか?
私は Python コードを生成する DSL を構築しようと考えているので、Python でこれらのツールのいずれかを使用したことがある人の意見を聞くことに特に興味があります (3 つすべてがかなり Java に焦点を当てているように見えますが、それはなぜでしょうか?)。DLS は主に私自身が使用するためのものなので、KISS で構文を定義してコード ジェネレーターを作成するよりも、本当にきれいな IDE を構築することには関心がありません。DLS の型チェック/静的解析を行う機能も非常に優れています。
道をずっと下って壁にぶつかり、すべてのコードが他のものに移植できない形式になっていることに気付くことを少し恐れています。これらのツールにはリスクがありますか? 特にMPSは少し怖いように思えます。私が理解しているように、テキストベースの構文を実際に生成するのではなく、AST専用のエディターを構築するからです。