应该提升fn->comparator
调用
(sort (fn [x y] ((fn->comparator comp) (keyfn x) (keyfn y))) coll)
(let [comparator (fn->comparator comp)] (sort (fn [x y] (comparator (keyfn x) (keyfn y))) coll))
此外,fn->comparator
再次对{{sort}}中的函数进行调用。不清楚如何避免除非我们将sort代码复制到{{sort-by}}中。