From mboxrd@z Thu Jan 1 00:00:00 1970 Received: (from majordomo@localhost) by pauillac.inria.fr (8.7.6/8.7.3) id HAA30245; Sun, 18 May 2003 07:44:48 +0200 (MET DST) X-Authentication-Warning: pauillac.inria.fr: majordomo set sender to owner-caml-list@pauillac.inria.fr using -f Received: from nez-perce.inria.fr (nez-perce.inria.fr [192.93.2.78]) by pauillac.inria.fr (8.7.6/8.7.3) with ESMTP id HAA29980 for ; Sun, 18 May 2003 07:44:47 +0200 (MET DST) Received: from opus.davidb.org (66-75-152-1.san.rr.com [66.75.152.1]) by nez-perce.inria.fr (8.11.1/8.11.1) with ESMTP id h4I5ikT06838 for ; Sun, 18 May 2003 07:44:46 +0200 (MET DST) Received: from davidb by opus.davidb.org with local (Exim 3.31 #1 (Debian)) id 19HGyR-0008DB-00; Sat, 17 May 2003 22:44:43 -0700 Date: Sat, 17 May 2003 22:44:43 -0700 From: David Brown To: Chris Hecker Cc: "'caml-list@inria.fr'" Subject: Re: [Caml-list] ocaml and large development projects Message-ID: <20030518054443.GA31538@opus.davidb.org> References: <4.3.2.7.2.20030517192812.033d9040@localhost> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <4.3.2.7.2.20030517192812.033d9040@localhost> User-Agent: Mutt/1.4i X-Spam: no; 0.00; caml-list:01 hecker:01 scaling:01 inlining:01 inlined:01 dependencies:01 ocamldep:01 compiler:01 chris:01 ocaml:01 recompile:01 0700,:01 surprising:01 native:02 modules:02 Sender: owner-caml-list@pauillac.inria.fr Precedence: bulk On Sat, May 17, 2003 at 10:32:54PM -0700, Chris Hecker wrote: > > >One issue to be aware of: if you build native code, when you change a > >module, then all dependent modules must be recompiled. This can be > >surprising when a small change to a utility module causes a near full > >recompile of the project. The byte-code compiler does not have this > >issue, and is sufficient for testing in most cases. > > Uh, isn't this a major flaw in the compiler? Why does this happen? This > seems like a vital part of scaling native code projects that's broken...I > was certainly counting on it working correctly quite soon. Inlining. Inlining is an important optimization, especially for functional languages, where many functions are typically short. However, inlinign causes a dependency on the bodies that are being inlined. These dependencies are correctly displayed by ocamldep, though. Dave ------------------- 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