什么时候应该使用一个领域特定语言?

<p>我想,当我应该使用领域特定语言一些实用的指导。我发现资源有关的优点和缺点,但什么样的项目将保证它的使用? P&gt; </p><p>好像有时间来创造和维持一个DSL,所以在什么应用的空间,我会得到我的时间投资回报率的生产力?一个很大的投资 P&gt; </p><p> <strong>编辑: STRONG&gt;看来DSL的最常见的用途是用于文件格式的持久化数据的状态,怎么样使用程序逻辑和结构(也许代码生成)一个DSL?如果是这样可行吗? P&gt; <p> <strong>编辑#2 STRONG&gt;我主要问时创建一个特定的DSL值得的。当然,我们应该利用现有的DSL尽可能节省时间。 P&gt;
</strong></p></strong></p>

188 浏览 1 回复
  gt   一个   dsl   语言   特定  

回复

    <p>有极少数的很好的理由创造另一个DSL。世界是脂肪的专用语言。 P&gt; </p><p>这些行一起想的。 P&gt; </p><ol> <li> <p>解决通用语言如Python,Java和C ++的问题..什么的。 p&gt; li&gt; </p></li><li> <p>优化的解决方案,分解出的共同特征,并建立一个非常好的,真的很优雅,真正可扩展的类库。 p&gt; li&gt; </p></li><li> <p>优化的类库强调的“正交性”。确保所有的功能很好地协同工作,没有任何问题。 p&gt; li&gt; </p></li><li> <p>如果你只需要语法简化,创建一个在你漂亮的类库脚本包装。这是你的DSL。对于Python,这很容易 - 它已经是一个动态语言。对于Java,有一些事情是你可以利用。对于C ++也可以是一些工作来建立这个灵活的脚本环境。 p&gt; li&gt; </p></li><li> <p>如果您还需要进一步的优化,可以考虑写您的DSL的编译器。 p&gt; li&gt; OL&gt; </p><p>在ACM计算概观文章何时以及如何开发领域特定语言上只是提供建议这个话题一样,Martin Fowler的书2010 领域特定语言的。 p&gt;
    </p></li></ol>

    姚娉

相关提问


友情链接: