> 这两者都是关于构建一个不会在这些项目中调用的迭代器函数
Alex,我想澄清这一点是错误的。Meander确实使用由生成宏代码实现的`iter`函数,在某些情况下可以更简单地实现一些语义(简化代码生成)。尽管现在我意识到有机会在不使用`iter`的情况下实现这一点,但在当时我没有这种解决方案,`iter`解决了我的问题。
您承认这些情况存在,这也是一些Clojure内部组件没有“锁起来”的原因。您承认Wilker提供的`iter`的JVM实现是“完全可行的”。然而,您认为它不应该成为公共API的一部分,或者不是一个好主意,但没有给出明确的原因来解释您的想法。
> 我认为`iterator`不是一个应该广泛使用或推广的函数
我同意。核心库中存在许多不太常用也不太推广但仍然有用的函数。换而言之,推广能力或使用范围不能成为排除`iter`的理由。
> 通常,迭代器在Clojure中是非常不常见的。
这是一个排他性的本质主义立场。就像你的观点一样,兄弟。:^)
Clojure包含许多机会在核心库中使用“具有状态性和通常不适用于并行的”事物,并且正如你所指出的,故意使这些事物可用。因此,从我的位置来看,无论“Clojure化”包含什么,似乎也包括那些“不Clojure化”的事物。
现在,让我问你,一个函数在被视为“应该”之前必须满足什么任意标准?