The "`some` approach" will tell you if something is a member of the collection, but it won't tell you the index (basically, it's asking, does the predicate return true for something in the collection, and returns true/nil appropriately). But that doesn't tell you where something is in the collection. Several times I've wanted an `index-of` function in core covering all sequential collections (anything that would respond to `nth`). I typically use this for statistical types of routines, where I want to say that a given data value represents such and such a percentile. So, sort the collection, find the element index, divide index by count of elements, etc. Yes, it has linear time bounds. That hasn't stopped `clojure.string/index-of` from being useful. Yes, it would be better for programs to implement binary search, particularly for sorted data. That would be useful in core as well (vectors only).