DSL / Using Code-Generation


コード生成を利用する

要約

DSLから意味論モデルを生成し意味論モデルを実行する。
このアプローチは解釈と呼ばれる。

コンパイルは解釈の代替である。
DSLの文脈ではコンパイルのアプローチはコード生成として言及される。

コード生成は追加のコンパイルを必要としビルドプロセスを複雑化することがある。

動的言語を生成するようにすれば追加のコンパイルの問題は避けられる。
コード生成はDSLをサポートするためのツールを持っていない言語プラットフォーム(SQL、COBOLなど)でDSLを利用する場合に便利である。

DSLはコード生成に焦点があてられることが多いが、実際にはコード生成はそれほど必要とされていない。

入力テキストから直接コードを生成する方法は非常に単純な場合にのみ有効。
意味論モデルを使用することで、解析、意味論の実行、別領域の問題へのコード生成、を分離できる。

意味論モデルはDSLの取り組みの中心にあるものだ。

担当者のつぶやき

みんなの突っ込み


まとめ (議事録)