binary search: diff ways to impl, in go