sig
  val ( >|= ) : ('a, 'err) CCResult.t -> ('a -> 'b) -> ('b, 'err) CCResult.t
  val ( >>= ) :
    ('a, 'err) CCResult.t ->
    ('a -> ('b, 'err) CCResult.t) -> ('b, 'err) CCResult.t
  val ( <*> ) :
    ('a -> 'b, 'err) CCResult.t ->
    ('a, 'err) CCResult.t -> ('b, 'err) CCResult.t
end