2

いくつかの異なる言語でコードを生成する方法を探しています。良いスタートは、ObjC、Java for Android、Unity、および JavaScript (Cordova) で、繰り返しコード用です。現在、私は各言語でコードを手動で何度も書いています。私は MPS を見ていて、1 つの DSL を開発し、そこから言語ごとに異なるコードを生成することを考えています。

私の質問は、MPS では言語ごとに異なる TextGen を作成できるのですか?

4

1 に答える 1

3

はい、MPS ではさまざまな言語をターゲットにすることができます。確かに、MPS の生成プロセスの 2 つの論理的な "フェーズ" を区別する必要があります。モデル変換を実行するジェネレーターと、モデルをテキストに変換する textgen です。通常、ジェネレーターは DSL を汎用言語 (引き続き AST として表されます) に変換しますが、その汎用言語用に定義された textgen はコードをテキストに変換します。現在、そのような汎用の「ベース」言語がいくつか存在します。Java、C、XML、およびいくつかのプロトタイプです。

DSL 用に定義された textgen を介して DSL をテキストに直接変換することも可能ですが、単純な DSL でのみ可能です。

于 2015-07-23T08:16:56.777 に答える