インデントベースの言語 (python、yaml、coffee など) を解析する必要があり、spirit X3 の使用を検討しています。
インデント/デデント トークンを生成するために、Spirit Lex やその他のレクサー ライブラリを使用できることはわかっています。
X3 は、追加のライブラリを使用せずにこれを達成する別の方法を提供していますか?
同様の言語の X3 文法は既に実装されていますか?
考えられる他の解決策を探しているときに、このブログ投稿とメーリング リストの関連スレッドを見つけました。
そのままSpirit.Qiを使用してpythonを解析することは可能ですが、解析レベルで低レベルのインデント処理を混在させると面倒に見えます。
これはSpirit Qiに関するものですが、次のとおりです。
- lexなしでどのように実行できるかについての具体的な答えは提供していません。
- Qi や X3 にはあまり詳しくありませんが、ドキュメントに基づいて、Lex なしでこの機能を実装する方法がわかりません。
私は必ずしも完全な解決策を探しているわけではなく、正しい方向へのいくつかの指針を探しているだけです。