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 WAA19983; Wed, 25 Sep 2002 22:58:31 +0200 (MET DST) X-Authentication-Warning: pauillac.inria.fr: majordomo set sender to owner-caml-list@pauillac.inria.fr using -f Received: (from weis@localhost) by pauillac.inria.fr (8.7.6/8.7.3) id WAA19978 for caml-list@pauillac.inria.fr; Wed, 25 Sep 2002 22:58:31 +0200 (MET DST) Received: from concorde.inria.fr (concorde.inria.fr [192.93.2.39]) by pauillac.inria.fr (8.7.6/8.7.3) with ESMTP id VAA18441 for ; Wed, 25 Sep 2002 21:31:10 +0200 (MET DST) Received: from main.gmane.org (main.gmane.org [80.91.224.249]) by concorde.inria.fr (8.11.1/8.11.1) with ESMTP id g8PJV7507450 for ; Wed, 25 Sep 2002 21:31:09 +0200 (MET DST) Received: from list by main.gmane.org with local (Exim 3.35 #1 (Debian)) id 17uHsA-0006S5-00 for ; Wed, 25 Sep 2002 21:30:58 +0200 To: caml-list@inria.fr X-Injected-Via-Gmane: http://gmane.org/ Received: from news by main.gmane.org with local (Exim 3.35 #1 (Debian)) id 17uHs9-0006Rw-00 for ; Wed, 25 Sep 2002 21:30:57 +0200 Path: not-for-mail From: "=?iso-8859-1?q?Micha=EBl_Gr=FCnewald?=" Subject: [Caml-list] Re: We should start using -pack by default when building libraries, (was : Re: Meta module in findlib and the need for namespaces) Date: 25 Sep 2002 21:33:32 +0200 Organization: (none) Message-ID: <87k7l9yicz.fsf@ketanu.dyndns.org> References: <3D87406D.9010406@baretta.com> <20020922212920.GG914@ice.gerd-stolpmann.de> <20020923084301.GA1272@iliana> <20020923163619.A16997@pauillac.inria.fr> <20020924063041.GA1436@iliana> <87d6r2llnw.fsf@ketanu.dyndns.org> <20020925093229.GA1424@iliana> NNTP-Posting-Host: amontpellier-203-1-4-220.abo.wanadoo.fr Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit X-Trace: main.gmane.org 1032982257 24795 80.14.105.220 (25 Sep 2002 19:30:57 GMT) X-Complaints-To: usenet@main.gmane.org NNTP-Posting-Date: Wed, 25 Sep 2002 19:30:57 +0000 (UTC) User-Agent: Gnus/5.09 (Gnus v5.9.0) Emacs/21.2 Sender: owner-caml-list@pauillac.inria.fr Precedence: bulk Sven LUTHER writes: > > So every unmaintained code and Makefiles becomes all suddenly obsoletes ? > > unmaintained code is not good to have around anyway, it will most > probably break some in the future anyway (when there is a ocaml 4.0 for > example ?). Oc :) > > > > This is a really bad thing to do things like this, and it is so easy to > > write wrappers scripts over the compiler, so it has defaults suitable for > > your needs ... There is no need to modify standards for that. > > But the change is only adding the appropriate open at the top of the > files, i guess it could even be done with automatic translation or > something such. > > Also, i guess the Pervasive library will be opened by default, and maybe > also the standard library. > > This namespace problem is one that ocaml was having since a long time, > and which will become only worse as time passes and more library will be > written. So are you saying that we should stay with something that will > cause more and more problem as time passes, just because some obsolete > and unmaintained code will break in this case ? > > Anyway, this can be done in a painless incremental way. > > We decide that starting now, all libraries should use the -pack option > when it is possible, and slowly migrate to using that for the existing > code, but still keep the default behavior as usual. Later, when we are > satisfied that it works well and most libraries are ported to using > -pack (and the acompanying code using it also), we can modify the > behavior to use -pack by default for libraries. But what if you compile only one module ? If you compile a.ml ocamlc -c -o unnom.cmo a.cmo will act like ocamlc -pack -o unnom.cmo -c a.cmo and i will have to access the A module through Unnom.A which is very disturbing, isn't it ? I cannot understand why you wish a so strange behaviour, and - think that it is disturbing for beginners that use a compiler for the first time, and ask them to read more doc on something that is not clearly needed, so it makes more magic - wonder why you do not want use something like a makefile, and change your compiler with $(OCAMLC) and having `OCAMLC=ocamlc -pack' if you really find it useful. - am leaded to think you try to set something that will coerce the users to use a special type of organisation in their developpement (such as namespace), in the ways of passivity, so that default behaviour is oc, and since it is easier to do nothing than to do something, default will be followed. This way has a lot of horrible names i do not want to write here. It is better to convince every one this design is a good and shioul be used, because people must do things they want (keywords are they and want). > And btw, it is more natural to write, for example Gdk.Event.Button than > GdkEvent.Button, as we do now, don't you think ? I do think so. But what has it to do with the `pack option enabled by default' ? > > > That said ... > > > > > > John Carr Wrote : > > > > > > | OCaml 3.06 does not support -pack when using native code on a system > > > | without the GNU linker. If you release software that depends on -pack, > > > | I will not be able to use it. > > > > > > Well, this would cause a problem, which need to be solved before -pack > > > is supported as standard. What are exactly the cases were it causes > > > problem, (AIX when not using the GNU linker, i guess, but also maybe > > > windows ?) and is there any chance this can be solved soonly ? > > > > > > Alternatively, this could be a feature that could be enabled/disabled at > > > build time ? > > > > E.g. with the `-pack' option ? :) > > At build time of the ocaml compiler suite, with a configure option, so > that you could build an ocaml suite to either use -pack by default or > not, and a ocamlc option to return the default used pack option, so you > could use it to write the libraries accordyingly (well, maybe this is > not easily). This sounds hairy (i mean: i am frightened !) ! How can you write Makefile that can compile an application on any installation, when the change you eask about is applied (if i understand it). you determine if the default behaviour is to pack or not to you set a variable OCAMLC according to what you expect the compiler to do. you use the OCAMLC variable in the place of `ocamlc' program When it is not, and you want the apck option being ysed: you set a variable OCAMLC=ocamlc -pack you use the OCAMLC variable in the place of `ocamlc' program What is the simplest ? As you may noticed, i REALLY do not understand WHY you want the pack option enabled by default (and it sounds really stupid to me, as i tried to demonstrate it. I am not professional developper, so my point of view on these problems might be more `naive' than yours, so be patient ... :) ) Friendly, -- Michaël Grünewald - RSA PGP Key ID: 0x20D90C12 ------------------- 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