TextMap - A map is an associative array data type composed of a collection of key/value pairs such that, each possible key appears at most once in the collection.
Create a map from a list of key/value pairs with a combining function. Examples:
fromListWith (++) [("A", ), ("A", ), ("B", ), ("B", ), ("A", )] == fromList [("A", [1, 2, 3]), ("B", [2, 1])] fromListWith (++)  == (empty : TextMap [Int])
Convert the map to a list of key/value pairs where the keys are in ascending order.
TextMapusing a predicate: keep only the entries where the value satisfies the predicate.
TextMapusing a predicate: keep only the entries which satisfy the predicate.
Delete a key and its value from the map. When the key is not a member of the map, the original map is returned.
Insert a new key/value pair in the map. If the key is already present in the map, the associated value is replaced with the supplied value.
The union of two maps, preferring the first map when equal keys are encountered.
Merge two maps.
merge f g h x yapplies
fto all key/value pairs whose key only appears in
gto all pairs whose key only appears in
hto all pairs whose key appears in both
y. In the end, all pairs yielding
Someare collected as the result.