由jafingerhut发表的评论:
好,我写了一个检查我的 :added 注释是否具有正确版本的程序,并写了一些代码来检查 所有 公共变量,或者至少 public-vars-with-docstrings-have-added doctest 所做的那些,看看它们在哪些 Clojure 版本中成功解析,以及在哪些版本中它们不会解析(或在那个版本的 Clojure 中其命名空间甚至还不存在)。
已确认 Patch clj-2519-v2.patch 中的所有 :added 元数据都使用了该程序中正确的版本号。
我发现有24个公共变量可能没有正确的:添加版本号,但所有这些情况中,添加的版本都是“1.3”或更早,更正后的版本也应该是“1.3”或更早。您有兴趣纠正这些中的任何一项吗?
示例:所有这些变量都有:添加“1.0”,但那可能是从没有“-int”后缀的类似名称的实现中复制来的。带有“-int”后缀的名称实际上是在Clojure 1.3中添加的
unchecked-add-int
unchecked-dec-int
unchecked-divide-int
unchecked-inc-int
unchecked-multiply-int
unchecked-negate-int
unchecked-remainder-int
unchecked-subtract-int
对于inc和inc',当inc'最初被添加到Clojure 1.2之前很早的时候,inc的:添加是“1.0”,inc'的添加是“1.2”,这是正确的。在1.3发布之前,将有时间互换这两个函数定义中的名称,但:添加值仍保持在函数的实现主体中,从那时起我们已经有了inc的:添加为“1.2”,inc'的:添加为“1.0”。我相信还有其他的函数在它们的名称末尾有一个单引号,也有类似的情况。