Clojure是否实现了DSL(特定于域的语言)?

最佳答案

像任何Lisp方言一样,Clojure在API和DSL之间划了一条非常模糊的界线,因此,该术语没有其他语言所具有的神秘感。 Lisp程序员倾向于将其程序编写为DSL层,每一层服务于DSL之上的层。话虽这么说,但您可以说以下几种显示DSL级别的重要级别(没有特定顺序):

  • Enlive(HTML模板)
  • LazyTest(单元测试)
  • fnparse(解析器生成器)
  • Midje(测试和模拟)
  • byte-spec(二进制格式)
  • Vijual(图形布局)
  • Trammel(约束编程)
  • Cascalog(带有数据记录语法的Hadoop)
  • Incanter(类似R的环境)
  • Sandbar(HTML session ,表单,身份验证)
  • ClojureQL(SQL)
  • mini-kanren(嵌入式逻辑编程)
  • Leiningen(构建工具)
  • sexpbot(带有插件拱的IRC机器人)
  • 关于clojure - 是否有Clojure DSL?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/3968055/

    10-12 16:32