let may ~f x =
  match x with None -> ()
  | Some x -> let _ = f x in ()