评论由:hiredman 提出
clojure 的文档系统包含两个部分
文档字符串附加到对象的元数据上
文档宏(及一些其他工具)从对象中读取文档字符串并显示它们
这两个部分协同工作,如果没有文档宏,文档字符串仅是注释,也会占用运行时的内存,而如果没有文档字符串,则文档宏没有目的。
文档字符串主要附加在 var 元数据和 namespace 元数据上。
对于多方法(multimethods)和协议函数,文档字符串附加到 var 上。
对于多方法(multimethods)和协议的实现,没有单独的 var 附加文档信息,并且不清楚如何查找这些文档字符串。
因此,要支持 defmethods 和协议实现的文档,需要对 doc 进行改进,并进行一些设计工作,因此制作一个设计wiki页面是个好主意。