Browse thread
[Caml-list] automatic extraction of mli file?
[
Home
]
[ Index:
by date
|
by threads
]
[ Message by date: previous | next ] [ Message in thread: previous | next ] [ Thread: previous | next ]
[ Message by date: previous | next ] [ Message in thread: previous | next ] [ Thread: previous | next ]
| Date: | -- (:) |
| From: | Sven LUTHER <luther@d...> |
| Subject: | Re: [Caml-list] automatic extraction of mli file? |
On Sat, Oct 12, 2002 at 07:50:55PM +0800, Yang Shouxun wrote: > Nicolas Cannasse wrote: > >>What I'm wondering is "wouldn't it be preferrable to automatically > >>produce the interface file from the implementation file?", so that we > >>can program in the literate programming style, do prototyping, and save > >>the drudgery of writing the interface (though a little manual editing > >>may be necessary, or some kind of markup in the source code). > > >The "-i" ocamlc compiler flag is what you need. > > This seems to be not what I mean. OK, that is what I asked :(. > > All the comments will be removed. That is not desirable, for the mli > file is meant to be read by both machine and humans. The humans need the > comments to make sense of the interface file, without reference to the > implementation code. Well, in general, you write the .ml, and once you are satisfied, you can generate the .mli, and adapt it to your need : add comments, remove uneeded info, etc. Later one, you have to maintain both files separatedly. The idea being that the .mli is the contract that the .ml has with its users, so basically you can improve on the .ml, without changing much its interface. Another way of programming, is writting the .mli first, so it correspond to what you want, and then write the implementation of it. But any way you do it, normally you don't change the .mli very much after the first writing, so it is ok to maintain it by hand. Friendly, Sven Luther ------------------- To unsubscribe, mail caml-list-request@inria.fr Archives: http://caml.inria.fr Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ: http://caml.inria.fr/FAQ/ Beginner's list: http://groups.yahoo.com/group/ocaml_beginners