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 RAA29123; Sat, 27 Mar 2004 17:05:04 +0100 (MET) 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 RAA28056; Sat, 27 Mar 2004 17:05:03 +0100 (MET) Received: from smtp3.adl2.internode.on.net (smtp3.adl2.internode.on.net [203.16.214.203]) by nez-perce.inria.fr (8.12.10/8.12.10) with ESMTP id i2RG5eKW007182; Sat, 27 Mar 2004 17:05:42 +0100 Received: from [192.168.1.200] (ppp113-158.lns1.syd3.internode.on.net [150.101.113.158]) by smtp3.adl2.internode.on.net (8.12.9/8.12.9) with ESMTP id i2RG4vUK056234; Sun, 28 Mar 2004 02:34:59 +1030 (CST) Subject: Re: [Caml-list] Delaying module initialization From: skaller Reply-To: skaller@users.sourceforge.net To: Benjamin Geer Cc: Xavier Leroy , caml-list In-Reply-To: <406575DA.2090908@socialtools.net> References: <20040326165943.GA18734@redhat.com> <20040327.022627.38703728.yoriyuki@mbg.ocn.ne.jp> <20040326184424.GA20895@redhat.com> <8765cre8el.dlv@vanicat.homelinux.org> <20040327101944.GA1941@redhat.com> <20040327121832.B29840@pauillac.inria.fr> <406575DA.2090908@socialtools.net> Content-Type: text/plain Message-Id: <1080403497.4708.160.camel@pelican.wigram> Mime-Version: 1.0 X-Mailer: Ximian Evolution 1.2.2 (1.2.2-4) Date: 28 Mar 2004 02:04:57 +1000 Content-Transfer-Encoding: 7bit X-Miltered: at nez-perce by Joe's j-chkmail ("http://j-chkmail.ensmp.fr")! X-Loop: caml-list@inria.fr X-Spam: no; 0.00; caml-list:01 sourceforge:01 2004:99 38,:01 hassling:01 dynamically:01 dynamically:01 loadable:01 9660:01 glebe:01 libc:01 computed:01 caml:01 caml:01 bytecode:01 Sender: owner-caml-list@pauillac.inria.fr Precedence: bulk X-Status: X-Keywords: X-UID: 392 On Sat, 2004-03-27 at 23:38, Benjamin Geer wrote: > Xavier Leroy wrote: > > (As far as "hassling" goes, this will only reinforce my conviction > > that shared libraries are useless. So, don't do that.) > > I don't mean to hassle you, but could you explain this conviction a bit? > If shared libraries are useless, why do all Unix and Linux programs > use libc as a shared library? This isn't really what I call dynamic loading though, but lazy static binding. By dynamic loading *I* mean the module to load is computed at run time depending on inputs to the program. > If Caml could make shared libraries, perhaps those sorts of > libraries (very large libraries, meant to be used by many small > programs) would have a better chance of being written in Caml. Yes. There is a tension between dynamically loading which is possible with bytecode, and generation of dynamically loadable native code. The former is interesting but not industrially satisfying because it doesn't allow dynamic loading of interfaces to C, which must be native code. -- John Skaller, mailto:skaller@users.sf.net voice: 061-2-9660-0850, snail: PO BOX 401 Glebe NSW 2037 Australia Checkout the Felix programming language http://felix.sf.net ------------------- 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