module type Mappable =sig..end
A signature for data structures which have a
map : ('a -> 'b) -> ('a t -> 'b t) operation.
If you create a new data structure, you should make it compatible
with Mappable.
type 'a mappable
The data structure, e.g. 'a List.t
val map : ('a -> 'b) ->
'a mappable -> 'b mappablemap f e applies f to every element of e and returns the corresponding data structure