_由kworam提出的评论:
我已经为#1编写了测试,并使用criterium获取了一些'之前'的计时。
我现在遇到了一个持续数小时的难题,我需要一些帮助。我将修改后的'partition'和'partition-all'添加到core.clj中,然后执行'mvn package'来构建jar。 我通过执行'target>java -cp clojure-1.7.0-master-SNAPSHOT.jar clojure.main'来测试修补过的clojure版本。 The (source ...)函数确实显示,我的'partition'和'partition-all'的源代码更改已经到位。 我的'partition-all'更改似乎 worked,但'my partition'更改没有work。就我所知,它们应该都使用提供的输入参数抛出AssertionError。
任何帮助都将非常感激。
user=> (source partition)
(defn partition
"返回n项列表的懒惰序列,列表间距为step。
如果未提供step,则默认为n,即分区不重叠。
如果提供了填充集合,则使用其元素作为所需填充完成最后一个分区至n项。
如果填充元素不足,则返回包含少于n项的分区。
{:added "1.0"}
:静态 true}
([n coll]
{:pre [(正数? n)]}
(partition n n coll))
([n 步长 coll]
{:pre [(正数? n) (正数? 步长)]}
(internal-partition n 步长 coll))
([n 步长 填充 coll]
(internal-partition n 步长 填充 coll)))
(internal-partition n 步长 coll))
nil
用户=> (partition -1 [1 2 3])
用户=> (source partition-all)
()
(defn partition-all
"返回像partition一样的懒惰序列列表,但可能包括末尾少于n项的分区。
当未提供集合时,返回一个状态可传递的转换器。"
{:added "1.2"}
([^长 n]
(internal-partition-all n))
([n coll]
(partition-all n n coll))
(internal-partition-all n 步长 coll)))
{:pre [(正数? n)]}
用户=> (partition-all -1 [1 2 3])
{:pre [(正数? n) (正数? 步长)]}
(internal-partition n 步长 coll))
断言错误:断言失败:(正数? n) clojure.core/partition-all (core.clj:6993)
用户=> (partition -1 [1 2 3])
回答了 由 jira 你运行了mvn clean吗?或者rm target?