type 'a map
= 'a ‑> 'a
type 'a iter
= 'a ‑> unit
type ('a, 'acc) fold
= 'a ‑> 'acc ‑> 'acc
type ('a, 'acc) fold_map
= 'a ‑> 'acc ‑> 'a * 'acc
type ('ctx, 'a) map_with_context
= 'ctx ‑> 'a ‑> 'a
type ('a, 'res) lift
= 'a ‑> 'res