Clojure:特殊表单,函数和宏的实现方式之间的区别

Pra*_*tki 11 clojure

我刚刚开始使用Clojure.我正在读这个.我不明白特殊表单的实现方式与函数和宏的实现方式之间的区别

几乎所有的函数和宏都是用Clojure源代码实现的.稍后将解释函数和宏之间的差异.特殊表单由Clojure编译器识别,未在Clojure源代码中实现.

有人可以解释两件事之间的区别吗?(在Clojure源代码中实现,未在Clojure源代码中实现)

Ank*_*kur 6

在Clojure源代码中实现

特定功能/抽象的代码在clojure语言本身中实现,即在.clj文件中实现.

没有在clojure源代码中实现

它以Java代码实现.

查看github上的Clojure代码,你会发现有Java和clojure代码.