一般的なドメイン固有言語を探しています。CSS がその 1 つで、XML/HTML が 1 つになる可能性があると思いますか? (言語よりもデータの方が多いようですが)。私が思いつくことができる他の唯一のものは、スタークラフトマップエディターです...
よく使われるドメイン固有言語にはどのようなものがありますか?
一般的なドメイン固有言語を探しています。CSS がその 1 つで、XML/HTML が 1 つになる可能性があると思いますか? (言語よりもデータの方が多いようですが)。私が思いつくことができる他の唯一のものは、スタークラフトマップエディターです...
よく使われるドメイン固有言語にはどのようなものがありますか?
ドメイン固有言語の秘訣は、特定の問題ドメインに対して独自の言語を定義することです。または、Kerzhner (2009) が述べているように、「DSL は、特定の問題領域を記述するように調整された言語です。」[1]
その観点から、HTML は悪い例です。なぜなら、問題のドメインに対して HTML を定義した人はごくわずかであり、Web サイトを設計するための標準言語として HTML を使用する人ははるかに多いからです。
したがって、次のような質問も考えられます: DSL を定義する一般的な言語はありますか? これらは、他の言語、つまりメタ言語を定義するための言語です。私は、OMG の Meta-Object-Facility である Eclipse-Modeling Framework (EMF) に関連する言語を、最も一般的な 2 つの言語と考えています。ただし、GrGen のメタモデリング機能も非常に印象的で、おそらく習得が容易です。
ところで: Soley では、ドメイン固有言語を開発するためのソフトウェアを構築しています。Soley Studioは、モデリングやデータ分析に使用できるグラフベースのドメイン固有言語を定義するための統合開発環境です。
[1]: カーズナー、AA、およびパレディス、CJJ (2009)。ドメイン固有言語を使用して、モデルベースのシステム エンジニアリングのための設計合成の知識を取得します。ASME 2009 International Design Engineering Technical Conferences & Computers and Information in Engineering Conference、IDETC/CIE 2009。米国サンディエゴ。
SuperCollider、または具体的には SuperCollider クライアント (sclang) は、リアルタイムのオーディオ合成とアルゴリズム構成に使用される DSL と見なされます。さらに、 Scala と Clojure を (それぞれ) 使用して SuperCollider サーバーと通信するScalaColliderやOvertoneなど、他のクライアント側の実装もあります。
ウィキペディアから:
ドメイン固有言語の例としては、
- HTML、
- 子供向けのロゴ、
- Verilog および VHDL ハードウェア記述言語、
- マトリックスプログラミングのMata、
- 記号数学のための Mathematica と Maxima、
- スプレッドシートの数式とマクロ、
- リレーショナル データベース クエリの SQL、
- パーサーを作成するための YACC 文法、
- レクサーを指定するための正規表現、
- 作図言語を作成するための Generic Eclipse Modeling System
- 音と音楽の合成のためのCsound、
- GraphViz と GrGen の入力言語、グラフのレイアウトとグラフの書き換えに使用されるソフトウェア パッケージ。