sig
  val ( >>= ) :
    ('a, 'b) Result.result ->
    ('-> ('c, 'b) Result.result) -> ('c, 'b) Result.result
  val ( >>| ) :
    ('a, 'b) Result.result -> ('-> 'c) -> ('c, 'b) Result.result
end