Hm I must say, I also don't really understand removing the predicate-based one. It is easy, when you have a comparison function, to get to a predicate:
pred := func(a, b T) bool { return cmp(a, b) >= 0 }
But not the other way around, so a predicate is more general.
I used the predicate version of `sort.Search` to look for prefix-matches in a sorted slice of paths. i.e. I was not looking for an equality match of the needle, but also something of which the needle is a prefix.
When I saw
#50340 fly by, I assumed this would be about adding a simpler version of `sort.Search` to make the common use-case simpler, which was very much fine with me, so I didn't follow that discussion. I would've spoken up sooner, if I expected the more general version to disappear.