caml-list - the Caml user's mailing list
 help / color / mirror / Atom feed
From: james woodyatt <jhw@wetware.com>
To: The Trade <caml-list@inria.fr>
Subject: Re: [Caml-list] GODI (was: CTAN/CPAN for Caml (COCAN ...?))
Date: Mon, 21 Jul 2003 13:37:25 -0700	[thread overview]
Message-ID: <2374E4D4-BBBB-11D7-A23A-000393BA7EBA@wetware.com> (raw)
In-Reply-To: <20030721163207.GA3936@redhat.com>

On Monday, Jul 21, 2003, at 09:32 US/Pacific, Richard Jones wrote:
>
> There are two big lessons from Java about how NOT to do this:
> Actually, THREE big lessons about how NOT to do this:
>
> (1) $CLASSPATH

Yeah, the mistake here is that a resource *identifier* is not the same 
as a resource *locator*.  I'm less worried about the process the INRIA 
tools implement to locate .cmo and .cmi files than I am about the 
semantics the Ocaml language supports for identifying libraries under a 
federated naming authority.

The issue at hand-- for me, at least, as a guy writing a component 
toolkit-- is the anarchy caused by planting the root of the 
extended-module-path production in a single global namespace with no 
organization.  I can enjoy the occasional visits to anarchy: I've been 
to Burning Man more than once.  But I like to live and work in 
republics-- especially in republics where the citizens can afford their 
upkeep (but that's another rant).

> (2) uk.co.mycompany.unweildy.modules.names

Yeah again.  The problem here is the conflation of the module path with 
the naming authority.  When you want to use modules from multiple 
libraries with different naming authorities, you need a way to identify 
the library resource that contains the extended module path.  That's 
why we can't do it with just compiler and linker arguments.  We need 
new syntax.

Right now, there is one library that contains all extended module 
paths: the Standard Objective Caml library.  (Note well: I am not 
talking about a .cma file here.)

On my system, the contents of that library are located in 
<file:///usr/lib/ocaml/>.  Since there's only one library, I don't have 
to identify it explicitly in my code.  The locator is hard-coded into 
the compiler and linker.  I can use arguments/environment to change it, 
and even add multiple locators to search, but I can't change the fact 
that there is only one library that must contain all the extended 
module paths in my system.

Which wouldn't be so bad-- if there were an omniscient, omnipotent, 
omnibenevolent worldwide librarian to regulate top-level module name 
assignment.  There isn't one, and I'm pretty sure I don't want one.

> (3) ant

Yeah again again.  Don't get me wrong: I hate /usr/bin/make more than 
any of three of you.  But I don't regard 'ant' as an improvement.  That 
said, the topic of software construction tools is completely unrelated 
to the main issue that fished me out of lurk mode: the opportunity to 
agitate for multiple roots for extended-module-path and a federating 
naming authority for those roots.


-- 
j h woodyatt <jhw@wetware.com>
that's my village calling... no doubt, they want their idiot back.

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


  parent reply	other threads:[~2003-07-21 20:37 UTC|newest]

Thread overview: 46+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2003-07-15 18:09 [Caml-list] CTAN/CPAN for Caml (COCAN ...?) Richard Jones
2003-07-15 18:37 ` Erik Arneson
2003-07-18  8:08   ` John Max Skaller
2003-07-16  3:13 ` BdB
2003-07-16  3:22   ` Alexander V. Voinov
2003-07-16  5:53     ` Issac Trotts
2003-07-16  6:43       ` BdB
2003-07-16  7:07         ` Wolfgang Müller
2003-07-16  9:22         ` Richard Jones
2003-07-16  9:51           ` Wolfgang Müller
2003-07-17  8:42         ` Florian Hars
2003-07-16  6:52   ` Florian Hars
2003-07-18  8:14 ` John Max Skaller
2003-07-18  8:42   ` Richard Jones
2003-07-18 15:46     ` Stefano Zacchiroli
2003-07-18 20:49       ` Yamagata Yoriyuki
2003-07-19 11:25         ` Daniel Bünzli
2003-07-19 19:47           ` Yamagata Yoriyuki
2003-07-18 14:29   ` Shawn Wagner
2003-07-19 11:55     ` [Caml-list] GODI (was: CTAN/CPAN for Caml (COCAN ...?)) Gerd Stolpmann
2003-07-19 12:18       ` Fernando Alegre
2003-07-19 12:38         ` Gerd Stolpmann
2003-07-19 13:20           ` Fernando Alegre
2003-07-19 22:58             ` Kip Macy
2003-07-19 20:05           ` [Caml-list] GODI Yamagata Yoriyuki
2003-07-19 20:40           ` [Caml-list] GODI (was: CTAN/CPAN for Caml (COCAN ...?)) BdB
2003-07-20  9:55             ` Gerd Stolpmann
2003-07-20 18:30               ` Christian Lindig
2003-07-21 16:19                 ` james woodyatt
2003-07-21 16:32                   ` Richard Jones
2003-07-21 16:37                     ` Richard Jones
2003-07-21 20:37                     ` james woodyatt [this message]
2003-07-21 21:48                     ` BdB
2003-07-22 20:48                   ` Christian Lindig
2003-07-22  0:01                 ` BdB
2003-07-22  2:35                   ` [Caml-list] licensing (was Re: GODI (was: CTAN/CPAN for Caml (COCAN ...?))) Alan Post
2003-07-22  7:57                     ` Dominique Quatravaux
2003-07-22  8:02                     ` BdB
2003-07-22 15:29                   ` [Caml-list] GODI Yamagata Yoriyuki
2003-07-20 23:11               ` Yamagata Yoriyuki
2003-07-21 12:01                 ` Fernando Alegre
2003-07-23  9:35       ` [Caml-list] GODI (was: CTAN/CPAN for Caml (COCAN ...?)) Xavier Leroy
2003-07-23 13:20         ` Gerd Stolpmann
2003-07-24 16:34           ` Eray Ozkural
2003-07-23 17:56         ` David Brown
2003-07-23 18:36           ` Fernando Alegre

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=2374E4D4-BBBB-11D7-A23A-000393BA7EBA@wetware.com \
    --to=jhw@wetware.com \
    --cc=caml-list@inria.fr \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).