let compare_positional u v = if equal u v then Some 0 else if strict_before u v then Some (-1) else if strict_after u v then Some 1 else None