欢迎!请参阅关于页面以获取有关此工作原理的更多信息。
Rich 在今天的 IRC 中提到,他欢迎 clojure.core/range 的累加器实现。既然我已经弄清楚如何进行迭代,我想我会趁今晚把 range 也解决了。这是一个预先打开的问题,以告知有兴趣的人。
评论者:jasonjckn
应该让 r/range 返回可序列和可计数的对象吗?
如果是这样,我将对 r/repeat 做同样的处理。
评论者:amalloy
我概述了问题和选项的描述。我对开发wiki不是很熟悉,无法确定将这部分内容放在何处。"release.next"似乎仍然是关于1.4的问题,我不知道是否应该为这个问题创建一个新的类别。这个问题有一个链接(见https://gist.github.com/1586b2460329dde1c374),暂时将其放在这里,直到找到更好的位置。
这是一个将 Rich 建议的“回滚”状态汇总到一个单个补丁的程序:将 r/range 和 r/iterate 函数分开。自从完成 Rich 要求的写稿以来,我没有收到任何反馈,因此目前不再做任何进一步的进展;如果需要这个补丁以外的其他内容,请告知。
评论由:richhickey创建
我宁愿不看到像这样对新型使用extend,也许这段代码过于DRY(Don't Repeat Yourself,重复不动)?它在一个补丁中做了很多事情,这让解析和接受变得困难。这添加了范围和向量折叠实现等。能不能将其拆分成单独的工单,每个工单都基于上一个工单进行构建,例如,一个工单可以是:捕获向量折叠实现以便由类似的内容重用。
好的,我应该在周末将其拆分。我还会看看将fold-by-halves转换为一个由Range/Vector使用的函数,而不是扩展到它们上的函数。
如要求,我已经将这个问题的较大补丁拆分为四个较小的工单。其他的三个是:CLJ-1045、CLJ-1046和CLJ-992。
CLJ-1045包含了折半实现的实现,因此只能在CLJ-1045被接受后应用此补丁。此工单不依赖于其他两个,但如果在它们之前合并,将会出现一些小的合并冲突。
评论由:gshayban创建
范围现在可约简。
我们应该关闭这个。1.7未涵盖的只有可折叠的方面。