caml-list - the Caml user's mailing list
 help / color / mirror / Atom feed
From: Kuba Ober <ober.14@osu.edu>
To: caml-list@yquem.inria.fr
Subject: Re: [Caml-list] Camelia progress, indenter
Date: Mon, 20 Oct 2008 16:02:49 -0400	[thread overview]
Message-ID: <200810201602.50825.ober.14@osu.edu> (raw)
In-Reply-To: <48FC99DA.6070606@lri.fr>

On Monday 20 October 2008, Romain Bardou wrote:
> Kuba Ober a écrit :
> >> I'm not sure that parsing ocamlbuild file is the right thing to do. For
> >> a simple OCaml project (which would probably mean most Camelia
> >> projects), there are no OCamlBuild files at all.
> >>
> >> Mmmhhh.... there's .itarget (i.e. a list of files you wish generated
> >> after compilation), but that's about it. And, again, most projects don't
> >> have any.
> >
> > OK, so I'll focuse on .itarget instead, since that's the thing that the
> > debugger has to cooperate with to decide what executable to run and
> > debug.
>
> Err... I'm not sure .itarget is what you want. It's close of what you
> want, sure, but you may have several .itarget for the same project,
> things like that.
>
> A typical project may have:
>    * some source files (.ml .mli .mly .mll);
>    * several main targets (.byte .native .mllib .mlpack), that may or
> may not be put together in one or several .itarget;
>    * a documentation (.odocl);
>    * some special rules (_tags myocamlbuild.ml), like some libraries to
> use; * a configure script.
> This is not, IMO, easily relatable to the project itself, which is
> simply a list of files...
>
> Given a list of files, an IDE can guess interesting targets such as:
>    * .docdir/index.html for each .odocl;
>    * .cma .cmxa for each .mllib;
>    * .cmo for each .mlpack.
> But potentially every file can generate several interesting targets. For
> instance, from the file x.mlpack, one can generate x.cmo, x.cmx, x.cma,
> x.cmxa, x.mli, or even x.docdir/index.html.
>
> IMO, simply allowing to view the whole contents of a directory is
> enough, especially thanks to the fact that ocamlbuild does not pollute
> your source directory.

That works for me.
In future I can implement functionality similar to Visual Studio's .vcproj
files, where you can basically hand-tune the build process, all without
leaving the IDE. I have had a go at writing a proof-of-concept stand-alone
"executor" or "builder" for .vcproj files, and it's not only doable, but
the concept should be easy to duplicate and is relatively user-friendly -
certainly better than dealing with Makefiles directly, and better than
dealing with qmake's .pro files too.

Cheers, Kuba


  reply	other threads:[~2008-10-20 20:02 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-10-17 13:55 Camelia progress Kuba Ober
2008-10-17 14:05 ` [Caml-list] " David Teller
2008-10-20 13:01   ` [Caml-list] Camelia progress, indenter Kuba Ober
2008-10-20 13:22     ` David Teller
2008-10-20 13:35       ` Kuba Ober
2008-10-20 14:46         ` Romain Bardou
2008-10-20 20:02           ` Kuba Ober [this message]
2008-10-21  8:35             ` Romain Bardou
2008-10-17 15:13 ` Camelia progress Sylvain Le Gall
2008-10-17 20:42 ` [Caml-list] " Andrej Bauer
     [not found] ` <e2d02be30810180555r602c5977n20122bbd9dbbedd9@mail.gmail.com>
2008-10-20 12:16   ` Kuba Ober
2008-10-20 13:07 ` [Caml-list] Camelia progress - indenter (this time for real) Kuba Ober
     [not found]   ` <e2d02be30810201102p79da38d4r6b15154aa4cce0c9@mail.gmail.com>
2008-10-20 19:59     ` Kuba Ober

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=200810201602.50825.ober.14@osu.edu \
    --to=ober.14@osu.edu \
    --cc=caml-list@yquem.inria.fr \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).