I concur. I think this is largely the accepted wisdom among experienced OCaml developers.
y
On 5/31/13 1:31 AM, Malcolm Matalka wrote:
I know of no such tool, but in counter to your premise: I used to thinkI had the same experience with you, after writing some large software in ML, I found it better to maintain mli by hand.
maintaining a .ml and .mli was foolish, however I no longer do. .mli is
effectively documentation for me. It contains a lot of comments and is
generally written to reflect how the API should be used rather than the
order in which I must express functions to get ta .ml to compile. On
top of that, ocamlc will fail to compile if your .ml and .mli don't
match, so it's a valuable check that what I think my module does is also
what the compiler does. I also tend to write the .mli first, then write
the .ml. I find it to be a great way to develop.
In short, I think it's a good thing to maintain these things by hand.
But as for your original question I'm completely useless, sorry.
/M
Francois Berenger <berenger@riken.jp> writes:
Hello,
Is there some recommended tool/script to generate a .mli
from the corresponding .ml?
I want a little more than ocamlc -i:
- I think there should be tags in the .ml file as comments
that say "export this" to the .mli.
By default, things are not exported.
- maybe it should have an option to say to replicate
the ocamldoc comments in the .mli.
- it could be nice if the order in which things are exported
to the .mli can be specified, maybe as an argument of the tag.
So that the .mli can be more readable (only backward references
to concepts, etc.)
If there is a need to create a tool, let's call it "nomli". :)
Regards,
F.
PS: I'm not going to maintain both a .mli and a .ml.
I feel it is a dumb and error-prone job and that
itches me.
--
Caml-list mailing list. Subscription management and archives:
https://sympa.inria.fr/sympa/arc/caml-list
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners
Bug reports: http://caml.inria.fr/bin/caml-bugs