Rust has a documentation pragma for stability (stable/unstable/experimental) that is heavily used in their development process. I think it would be great to have something similar for OCaml libraries, rather than ad-hoc conventions (e.g., batteries' "incubator").
More specifically, I would like some attribute like this:
(** Foobarzes every quux
@since 3.14
@unstable *)
val foobar : quux -> unit
(** A more conventional foo converter to bar
@stable *)
val make_bar : foo -> bar
Rust has a documentation pragma for stability (stable/unstable/experimental) that is heavily used in their development process. I think it would be great to have something similar for OCaml libraries, rather than ad-hoc conventions (e.g., batteries' "incubator"). More specifically, I would like some attribute like this: