From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.1.3 (2006-06-01) on yquem.inria.fr X-Spam-Level: * X-Spam-Status: No, score=1.0 required=5.0 tests=AWL,DNS_FROM_SECURITYSAGE autolearn=disabled version=3.1.3 X-Original-To: caml-list@yquem.inria.fr Delivered-To: caml-list@yquem.inria.fr Received: from mail2-relais-roc.national.inria.fr (mail2-relais-roc.national.inria.fr [192.134.164.83]) by yquem.inria.fr (Postfix) with ESMTP id A6CBDBBAF for ; Mon, 20 Oct 2008 16:46:57 +0200 (CEST) X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: ArsDAEU3/EiBrw8EgWdsb2JhbACTbwEBFiKuX4Ns X-IronPort-AV: E=Sophos;i="4.33,452,1220220000"; d="scan'208";a="16285665" Received: from ext.lri.fr ([129.175.15.4]) by mail2-smtp-roc.national.inria.fr with ESMTP/TLS/ADH-AES256-SHA; 20 Oct 2008 16:46:50 +0200 Received: from localhost (localhost [127.0.0.1]) by ext.lri.fr (Postfix) with ESMTP id 4DA15A499D for ; Mon, 20 Oct 2008 16:46:50 +0200 (CEST) X-Virus-Scanned: Debian amavisd-new at lri.fr Received: from ext.lri.fr ([127.0.0.1]) by localhost (ext.lri.fr [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id AoUErvmEZVMg for ; Mon, 20 Oct 2008 16:46:50 +0200 (CEST) Received: from smtp.lri.fr (vhost3-23 [129.175.3.23]) by ext.lri.fr (Postfix) with ESMTP id 385C2A48DE for ; Mon, 20 Oct 2008 16:46:50 +0200 (CEST) Received: from [129.175.4.107] (lri4-107 [129.175.4.107]) by smtp.lri.fr (Postfix) with ESMTP id 3DE93E055C for ; Mon, 20 Oct 2008 16:46:50 +0200 (CEST) Message-ID: <48FC99DA.6070606@lri.fr> Date: Mon, 20 Oct 2008 16:46:50 +0200 From: Romain Bardou User-Agent: Thunderbird 2.0.0.17 (X11/20080925) MIME-Version: 1.0 To: caml-list caml-list Subject: Re: [Caml-list] Camelia progress, indenter References: <200810170956.00776.kuba@mareimbrium.org> <200810200901.14331.kuba@mareimbrium.org> <1224508949.6319.58.camel@Blefuscu> <200810200935.24152.ober.14@osu.edu> In-Reply-To: <200810200935.24152.ober.14@osu.edu> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit X-Spam: no; 0.00; lri:01 ocaml:01 compilation:01 debugger:01 mli:01 mll:01 byte:01 cmxa:01 cmo:01 cmo:01 cmx:01 cmxa:01 mli:01 parsing:01 caml-list:01 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. -- Romain Bardou