2024 Clojure 状态调查!分享您的想法。

欢迎!请参阅关于页面以了解更多有关如何使用本站的信息。

0
序列

关于这个版本的some有何看法?

 (defn some [pred coll]
  (loop [s (seq coll)]
    (when s
      (or (pred (first s)) (recur (next s))))))

1 个答案

+1

已选择
我对此并不知情 :-)

我也做了一些性能测试,但发现这有点棘手,因为从clojure(script)转移到裸机时需要考虑许多因素。

我认为我的主要观点是,无论性能如何,对我而言,某些当前版本中的‘逻辑’就是不对 (-:-) 。从逻辑角度来看,可以使用 rest 代替 next,但在较新的 Clojure 版本上,由于某些原因,性能并没有达到我预期的那么好(至少在我的基准测试中是这样……所以这并不意味着太多…… -:-)

所以无论如何,我认为这个版本确实解决了某些‘逻辑/命令式’问题,同时也很清晰,易于阅读,所以我有点希望我或许可以对 Clojure 本身做出一点贡献(无论多小):-)

现在看到有人已经思考过以更复杂的方式重构某些(比我任何时候都要复杂……:-)),这有点酷(我真的喜欢这个想法!)但与此同时,也有些沮丧 (-:-)

所以,我想说的是,Clojure 真的很棒,继续加油!
@alexmiller …… 所以我想我已经连续想了两个月了 :-( …… ( … https://clojureverse.org/t/some-rest-vs-next/4598 …… )…… 我觉得我好像对 next、rest 和 some 的实际作用并没有任何满意的了解,反而恰恰相反!…… 我越想这些,我对它们的理解越不清楚!!!…… 所以如果你能给出一些解释(任何解释都行!)我将真的会非常感激……现在我意识到,这不是你的工作去喂养人们……我们都超级忙,工作等等……所以,至少告诉我,我是否遗漏了什么明显的遗漏……,或者这件事实际上和我开始看起来那么复杂和棘手 <:-> …… ( ……这是让我疯狂的事情!!!:->…… )
首先,请不要让它让你发疯 :-)
第二,你可能会在 clojurians.slack.com 上的 #clojure-dev 和/或 #cljs-dev 频道中获得一些额外的反馈和思路。

编辑
我同意Andy的看法,在Slack上进行实时讨论可能会更有生产力,因为现在听起来你甚至无法明确提出任何具体问题来消除任何混淆?
...