function i = binsearch_r(array, val, low, high) if ( high < low ) i = 0; else mid = floor((low + high) / 2); if ( array(mid) > val ) i = binsearch_r(array, val, low, mid-1); elseif ( array(mid) < val ) i = binsearch_r(array, val, mid+1, high); else i = mid; endif endif endfunction