SML# Document Version 4.0.0
26.17 LIST_PAIR
Provide generic functions for manipulating pair of lists.
signature LIST_PAIR = sig exception UnequalLengths val all : (’a * ’b -> bool) -> ’a list * ’b list -> bool val allEq : (’a * ’b -> bool) -> ’a list * ’b list -> bool val app : (’a * ’b -> unit) -> ’a list * ’b list -> unit val appEq : (’a * ’b -> unit) -> ’a list * ’b list -> unit val exists : (’a * ’b -> bool) -> ’a list * ’b list -> bool val foldl : (’a * ’b * ’c -> ’c) -> ’c -> ’a list * ’b list -> ’c val foldlEq : (’a * ’b * ’c -> ’c) -> ’c -> ’a list * ’b list -> ’c val foldr : (’a * ’b * ’c -> ’c) -> ’c -> ’a list * ’b list -> ’c val foldrEq : (’a * ’b * ’c -> ’c) -> ’c -> ’a list * ’b list -> ’c val map : (’a * ’b -> ’c) -> ’a list * ’b list -> ’c list val mapEq : (’a * ’b -> ’c) -> ’a list * ’b list -> ’c list val unzip : (’a * ’b) list -> ’a list * ’b list val zip : ’a list * ’b list -> (’a * ’b) list val zipEq : ’a list * ’b list -> (’a * ’b) list end
Structures that implement the signature
-
•
ListPair : LIST_PAIR