我正在開發一個需要我定義DSL的項目。由於提出正確的DSL對於我的項目至關重要,因此我決定評估現有框架,這些框架有助於定義DSL,對其進行解析並生成代碼(必須使用基於.NET的語言)。我考慮的框架包括:DSL框架的選擇
具有用於定義DSL定製編譯器和pythonish語法理想- 噓語言。
- 支持可擴展命令行開關的Windows powershell。
- 微軟DSL工具,支持可視化建模,但不靈活(在我看來)
- ANTLR這是證明工具
- C#流利的接口。(這個不那麼快樂)
- 奧斯陸框架(是否成熟)
上面提到的每個框架都有優點和缺點,我無法做出決定。給出上述框架之間的選擇,你會選擇哪一個,爲什麼?
有沒有其他的框架如此基本,我可能錯過了?
任何幫助或指導將不勝感激。
+1 - 一個很好的問題,我也在努力。我研究了Boo中構建域特定語言的早期版本,發現它令人沮喪 - 這些工具似乎並不成熟。我也相信PowerShell在這方面顯示出很大的希望。我也拿起了關於ANTLR的書。 ;) – TrueWill 2009-09-08 22:40:57