;; Iterative binary chop (defun chop (array n) (let ((low 0) (high (array-dimension array 0))) (loop while (> (- high low ) 1) do (let ((halfway (floor (/ (+ low high) 2)))) (if (< n (aref array halfway)) (setf high halfway) (setf low halfway)))) (if (= (aref array low) n) low -1)))