我在interview with Rich Hickey中读到他会对“使用逻辑系统代替Clojure的类型系统”感兴趣。我也在SO回答中提到了这个陈述,https://stackoverflow.com/a/6324228/380587我看不出逻辑和类型系统是如何相关的。
答案 0 :(得分:1)
截至目前,Clojure使用JVM提供的类型系统。您可以使用普通的旧宏在其上实现新的类型系统。这种新型系统也可以提供运行时检查。就类型检查器而言(对于现有的基于JVM的类型系统或对于您自己的基于宏的类型系统而言),可以使用core.logic来实现,类型检查器和core.logic之间的关系是类型检查器。任务是查看代码中的静态类型注释,并验证约束和关系是否满足,core.logic是一个可用于解决本质约束和关系检查相关问题的系统。
基本上,类型检查器是一个问题,它适合使用逻辑编程可以解决的问题。