Version française
Home     About     Download     Resources     Contact us    
Browse thread
[Caml-list] ocaml and large development projects
[ Home ] [ Index: by date | by threads ]
[ Search: ]

[ Message by date: previous | next ] [ Message in thread: previous | next ] [ Thread: previous | next ]
Date: -- (:)
From: Chris Hecker <checker@d...>
Subject: Re: [Caml-list] ocaml and large development projects

>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.

Is this true?  The cmi file for the interface doesn't insulate you from 
this in native code?  My project is native code, but I haven't been using 
mlis yet, because of the annoying interface-code-duplication-issue when 
changing things often is a huge pain, but I assumed this would just work 
correctly (meaning if the mli doesn't change then dependents won't 
recompiler) when I started using mlis to speed up my builds.  I've seen 
problems when doing simple tests before ("Files b.cmx and a.cmx make 
inconsistent assumptions over implementation A") that I just attributed to 
my screwups in the quick tests, but now I think they're this 
problem.  Another quick test indicates you're right.

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.

Chris


-------------------
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