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 SAA03827; Mon, 21 Jul 2003 18:19: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 SAA00133 for ; Mon, 21 Jul 2003 18:19:47 +0200 (MET DST) Received: from wetware.com (wetware.wetware.com [199.108.16.1]) by nez-perce.inria.fr (8.11.1/8.11.1) with ESMTP id h6LGJkT06142 for ; Mon, 21 Jul 2003 18:19:46 +0200 (MET DST) Received: from 208.177.152.18.ptr.us.xo.net ([208.177.152.18] helo=wetware.com) by wetware.com with esmtp (Exim 4.20) id 19edO4-0003eC-QA for caml-list@inria.fr; Mon, 21 Jul 2003 09:19:45 -0700 Date: Mon, 21 Jul 2003 09:19:43 -0700 Subject: Re: [Caml-list] GODI (was: CTAN/CPAN for Caml (COCAN ...?)) Content-Type: text/plain; charset=US-ASCII; format=flowed Mime-Version: 1.0 (Apple Message framework v552) From: james woodyatt To: The Trade Content-Transfer-Encoding: 7bit In-Reply-To: <20030720183027.GB559@eecs.harvard.edu> Message-Id: <2358A22D-BB97-11D7-B7E1-000393BA7EBA@wetware.com> X-Mailer: Apple Mail (2.552) X-Loop: caml-list@inria.fr X-Spam: no; 0.00; woodyatt:01 jhw:01 wetware:01 caml-list:01 cpan:01 lindig:01 decoupling:01 flags:01 attributed:01 locators:01 gerd:01 compiler:01 ocaml:01 caml:01 lib:01 Sender: owner-caml-list@pauillac.inria.fr Precedence: bulk On Sunday, Jul 20, 2003, at 11:30 US/Pacific, Christian Lindig wrote: > > This is a fresh idea. But I get the impression that the essence of it > is > to decouple the name of a module from the name of the file that > contains > it. Somebody suggested already an -alias directive for similar > purposes. > > We have to decide whether we want this decoupling to happen at the > level > of the language (i.e. new syntax), or only the level of its > implementation (i.e. new compiler flags). Right now, the mapping of > module names to files is a matter of the compiler and mostly invisible > at the language level. Yeah, the more I think about this problem, the more convinced I am that the only way to solve the problem well enough to quiet the bulk of the complaining is to do something-- in the syntax of the language-- to couple the *name* of a module with the globally unique *identifier* of the library that contains it. It seems to me that the compiler and the linker should be taught that all libraries have a hierarchical URI attributed to them. These would not be locators. They would be identifiers. More importantly, to quiet the complaints about the real problem at hand-- promoting code re-use-- there should be new language syntax for specifying module paths to include the URI of the library. I hesitate to propose one, but Gerd may be onto something: module Q = Queue[http://ocaml.org/lib/3.1] There should also be well-defined functions for turning a library URI into an appropriate URL, e.g. a file:-scheme URL for local library paths, an http:-scheme URL for web library paths, etc. That's my take. I hope it doesn't suck. -- j h woodyatt ------------------- 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