3

.NET 用のコンパイラ フレームワークを開発しており、パイプラインを柔軟に定義する方法が必要です。次のオプションを検討しました。

  • WWF
  • カスタム XML パイプラインの説明
  • コード内のカスタム パイプライン記述 (Nemerle のマクロを使用して構文を定義)
  • その他のコードベースの説明

要件:

  • .NET の新しいバージョン (3 以降) の機能のみに依存してはなりません。これは、クロスプラットフォームであり、マネージド カーネル上で使用されることを意図しているためです。つまり、.NET 機能が半限定的です。
  • 特定のコマンド ライン オプションが特定の要素と順序に対応するように指定できるように、条件付きパイプラインの構築を許可する必要があります。

WWF は便利ですが、最初の要件を満たしていません。他のものは機能しますが、関連する作業のために最適とは言えません。

これらの目標をほとんどまたはまったく変更せずに満たすソリューションを知っている人はいますか?

4

2 に答える 2

1

Rubyを知っている場合の解決策は、必要なパイプラインデータ型とリーダー/ライターコードを生成できる単純な内部DSLを作成することです。XMLの生成は、始めるための簡単な方法です。必要に応じて、DSLをいつでも変更して、後で別の形式を生成できます。

また、インスピレーションを得るためにMicrosoftPhoenixコンパイラプロジェクトを確認することもできます。

于 2008-09-15T13:47:20.290 に答える
0

Booがコンパイラを楽しませてくれることは知っていますが、それがあなたが望む方法で行われるかどうかはわかりません。

于 2008-10-08T14:14:31.470 に答える