为什么要使用文字字符构建Clojure字符串?
我刚才在读一些代码,我偶然发现: 这对我来说很奇怪。使用连续的文字字符,而不是包含这些字符的字符串。我希望有更像这样的事情:为什么要使用文字字符构建Clojure字符串?,clojure,rationale,Clojure,Rationale,我刚才在读一些代码,我偶然发现: 这对我来说很奇怪。使用连续的文字字符,而不是包含这些字符的字符串。我希望有更像这样的事情: (str cache ", " lru ", " tick ", " limit) 但这是一些可敬的Clojure老兵写的,这让我觉得可能有原因。原因是什么?演出还是什么?没有充分的理由。它的性能可能比带字符串的版本差,而且更难看。您也可以编写(join“,”[cache lru tick limit]),这是我的首选,但我可以理解选择直接写出来。但是,使用字符而不是字
(str cache ", " lru ", " tick ", " limit)
但这是一些可敬的Clojure老兵写的,这让我觉得可能有原因。原因是什么?演出还是什么?没有充分的理由。它的性能可能比带字符串的版本差,而且更难看。您也可以编写
(join“,”[cache lru tick limit])
,这是我的首选,但我可以理解选择直接写出来。但是,使用字符而不是字符串是无法解释的。我无法追踪添加了这一行的承诺,因为回购协议在交换名称时至少被破坏和重建了两次,但我敢打赌没有什么好的理由。也许是一些误入歧途的表演理念。我猜是风格选择。我不止一次地想,“老兄,我讨厌这些愚蠢的名言。”。
(str cache ", " lru ", " tick ", " limit)