有人知道DSL设计的好参考资料吗?

8

我一直在研究设计一些领域特定语言,我可能会在Clojure中实现它们,但我真的不知道涉及哪些内容。

我所想的语言是旨在为领域专家提供可读性强的抽象语言,这些专家可能没有或只有很少的编程背景。

有没有人知道任何有用的教程、书籍或其他参考资料?


3
“设计领域特定语言”快速谷歌搜索似乎可以找到大量的参考资料,包括 Google 的 David Pollack 制作的一个长达一小时的视频(http://video.google.com/videoplay?docid=-8103284744220333344&q=ruby#)。 - Lazarus
4个回答

8

+1 - David Fowler似乎在答案中经常出现,但我相信他已经停止在线更新书籍,因为他现在正在与出版商交流。 - James Black

3

《语言实现模式》是由AntlrString Template的创造者Terence Parr所著,这两个工具被认为是生成解析器和词法分析器最好的工具。

虽然该书目前处于“beta”版本,但它仍然是一本不错的读物。如果您购买该书,您将获得更新以及最终版本。


2

2

看起来你在描述一个外部DSL。为此,你需要设置一个解析器。

你有两个选择:编写自己的解析器(可能很困难)或使用现有系统(如ANTLR)定义语法。它是Java编写的,因此应该与Clojure兼容。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接