defn的文档字符串为:
bq. 与`(def name (fn [params* ] exprs*))`或`(def name (fn ([params* ] exprs*)+)`相同,可以添加任何文档字符串或属性到var元数据中。预后条件映射定义了一个包含可选键:pre和:post的映射,它们包含预或后条件集合。
参数列表为
bq. `(defn name doc-string? attr-map? [params*] prepost-map? body)`
有两个问题使我对这个文档字符串难以理解
1. 文档字符串没有提及attr-map? - 我需要在文档中跳转了一段时间,才将attr-map?与"添加到var元数据中的任何 [...] 属性"联系起来。
2. 文档字符串引用了exprs*,但是参数列表中称为body。