Description
In AcceleratedArrays.jl I've been playing with "search intervals" for querying data, for example finding all the dates within a given range with the help of a sort-based acceleration index.
I've shied away from using this package because the predicates for total order used by sorting algorithms in Julia are isequal
and isless
and the accelerations I rely on (e.g. this) may not be valid for <
and ==
comparisons.
I was wondering if there was a reason for chosing these operators, and whether or not we might consider it advantageous to use isless
and isequal
instead?
(One difficulty I have is dealing with data where some values are missing
, where <
and ==
aren't even predicates that return Bool
. In this case I still expect findall(in(0..10), array::Array{Union{Int, Missing}})
to work correctly and not crash!)