- vector-binary-search vec value cmpprocedure
Similar to vector-index and vector-index-right, but instead of searching left to right or right to left, this performs a binary search. If there is more than one element of vec that matches value in the sense of cmp, vector-binary-search may return the index of any of them.
cmp should be a procedure of two arguments and return a negative integer, which indicates that its first argument is less than its second, zero, which indicates that they are equal, or a positive integer, which indicates that the first argument is greater than the second argument. An example cmp might be:
(lambda (char1 char2) (cond ((char<? char1 char2) -1) ((char=? char1 char2) 0) (else 1)))