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

欢迎!请参阅关于页面以获取更多有关其工作方式的信息。

+3
集合
重新标记

为什么clojure.set没有提供symmetric-difference函数?

这似乎是一个相对频繁的需求。

`(s/difference (s/union a b) (s/intersection a b))` - 但可能性能不佳?
clojure.data/diff,然后组合唯一在a和b中的部分

1 个答案

0

没人记得要求过这个...

对于这类事情,我通常会考虑它是否会在实用库中弹出,以及它被使用的频率。你是否有这方面的数据?

https://grep.app/search?q=symmetric-difference&filter[lang][0]=Clojure 没有找到太多结果,但当然名字可能不同。
在我们的代码库中有多处 `(set/difference (set/union a b) (set/intersection a b))` 的实例,但没有给予它一个特定的名称。













...