sig   val list : ('-> '-> bool) -> 'a list -> 'a list   val array : ('-> '-> bool) -> 'a array -> unit   val merge : ('-> '-> bool) -> 'a list -> 'a list -> 'a list end