|
===================================== 〔語彙分解〕的な部分一致の検索結果は以下の通りです。 ・ 特化 : [とっか] 1. (n,vs) specialization 2. specialisation ・ 化 : [か] (suf) action of making something ・ 言 : [げん] 【名詞】 1. word 2. remark 3. statement ・ 語 : [ご] 1. (n,n-suf) language 2. word
ドメイン固有言語(ドメインこゆうげんご、、DSL)とは、特定のタスク向けに設計されたコンピュータ言語である。ドメイン特化言語あるいは単にドメイン言語とも呼ばれるが、学術的にはドメイン特化言語と呼ばれることが多い。C言語やJavaのような汎用のプログラミング言語の対照とされる。 DSL は一種類のタスクをうまく実行することに集中したものであり、古くから存在したが、ドメイン固有モデリングの発達と共にDSLという用語も広く知られるようになってきた。 例えば、ハードウェア記述言語のVerilogやVHDL、表計算ソフトのマクロ、関係データベースへの問い合わせ言語(SQLなど)、構文解析器構築用のyacc、字句解析器記述用の正規表現、図を作成する言語を構築する 、音響や音楽の合成用のCsound、グラフ描画用のGraphviz、依存関係解決用のmakeなどがある。 ドメイン固有言語が有効となるのは、既存の言語よりも特定領域の問題や解法をより明確に記述可能となる場合であり、かつその種の問題が比較的よく出現する場合である。は、問題を解く標準的過程の一部として問題を表現する特殊用途の言語を生成することを考慮する。 == 概要 == DSL は、ある特定の領域(ドメイン)の問題を解決するために作られ、それ以外の領域の問題を解くことは想定していない。一方、汎用プログラミング言語は様々な領域の問題を解くように作られている。 ドメインはビジネス領域にも対応することがある。例えば、次のようなDSLがある。 * 大手生命保険会社は、社内で利用する生命保険ポリシーDSLを開発している。 * 戦闘シミュレーションDSL * 給与計算DSL * 伝票DSL APIを公開しているDSLは、他のプログラミング言語から呼び出してライブラリのように使うことができる。 機能を拡張され続けた結果チューリング完全になってしまうDSLもある。つまり計算理論的には汎用のプログラミング言語と同等になってしまったということであり基本的にはDSLとしての設計の失敗とみなされることもあるが、珍しいことではない。そのようなDSLでもたいていは、設計目的外の用途のための記述は可読性が無く実用的ではない。 抄文引用元・出典: フリー百科事典『 ウィキペディア(Wikipedia)』 ■ウィキペディアで「ドメイン固有言語」の詳細全文を読む 英語版ウィキペディアに対照対訳語「 Domain-specific language 」があります。 スポンサード リンク
|