Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我刚才正在阅读一些代码,我遇到了这一行:
(str cache \, \space lru \, \space tick \, \space limit)
这对我来说很奇怪。使用连续的文字字符,而不是包含这些字符的字符串。我会期待更多这样的事情:
(str cache ", " lru ", " tick ", " limit)
但这是在一些可敬的 Clojure 资深人士编写的核心库中,这让我觉得也许是有原因的。什么原因?表现?或者是什么?
没有充分的理由。除了更丑之外,它的性能可能比带字符串的版本更差。你也可以写(join ", " [cache lru tick limit]),这将是我的偏好,但我可以理解选择手写。但是,使用字符而不是字符串是莫名其妙的。我无法追踪添加此行的提交,因为 repo 在切换名称时已被破坏并重建至少两次,但我敢打赌没有充分的理由。也许是一些被误导的表演理念。
(join ", " [cache lru tick limit])