C#、Java、Scalaなどの汎用プログラミング言語(GPL)を使用して実装されたDSLを探しています。主な目的は、ソフトウェア業界で日常的に使用されているうまく設計されたDSL実装のさまざまな重要な属性を調査することです。異なるGPL(汎用プログラミング言語)を使用して実装されたDSL(汎用プログラミング言語)
このようなDSLの実装(例やリポジトリ)を教えていただければ幸いです。あなたがそれが良いDSLであると考える理由を述べていただければ幸いです。
は、
アディルAkhter
EDIT 1ありがとう:
私見を、この記事では、今日のソフトウェアで広く使用興味深い現行のDSLのリストを作成するために貢献することができます開発(検索後、少なくとも私はすべてのGPLをカバーするそのようなリストは見つかりませんでした)。
このリストの固有の利点の1つは、対象とするDSLとドメインのタクソノミを作成するために使用できます。
のDSL(GPLSによって分類):
- ルビーのDSL =>Ruby DSL (Domain Specific Language) repositories, examples
- ClojureののDSL
以下は、いくつかの興味深いのDSLやツールについて説明関連リンクです=>Are there any Clojure DSLs?
- ScalaののDSL =>Interesting DSLs, Implemented in Scala?
- C#のDSL => SharpDOM(http://sharpdom.codeplex.com)
ツール:
- のMicrosoft Visual Studioの可視化とモデリングSDK:http://code.msdn.microsoft.com/vsvmsdk
ご回答いただきありがとうございます。私はあなたの仕事のかなりのファンです。私は現在、戦略的用語の書き換えを使用するプログラム変換システムである[Stratego](http://strategoxt.org/)と協力しています。 しかし、この質問の第一の目的は、現実世界のプログラミング問題を解決するためにどのように、またどのような種類のDSL(またはリトル言語)が実装されているのか、そしてどのように成功/実行可能であるかを調べることでした。With Regards –
SQL、リレーラダーロジック、制約言語、HDL(Verilog、VHDL)、HTML、XML、Prolog、もちろん言語ツール(EBNF、属性文法など)の構築に使用される言語もチェックしてください。これらはすべて非常に広く使用されているDSLです。どのようなものを私が見ているように有用なものにするかは、特定のタスクの簡潔な記述を可能にしたり、従来の手続き型(OOを含む)言語とは異なる計算モデルを提供することです。これまでに発明された最高のDSLの1つは、地球上のあらゆる深刻なエンジニアが使用する微積分です。これは数式で動作する制約システムです。 –
もう一度ありがとうございます。私はこれらのDSLを調べます。 –