评论人:hiredman
在这里,最好的办法可能是将sort改为返回向量。在序列管道中sort的使用将继续工作,但随后使用conj将中断(我无法立刻回忆起这种情况的实例,但我确信它们存在)。排序似乎意味着一个完整的集合,而向量是可以返回这里的“最强”集合。
鉴于核心是保守的,以及上面提到的conj排序问题,接下来的最佳选择可能是添加一个类似现有的mapv的sortv。
另一种选择可能是移除对seq的调用,这样sort就返回排序后的数组。这实际上非常实用,因为你可以使用Arrays.binarySearch。排序后的conj调用将引发异常,而不是传送到“错误”的位置。