Browse thread
[Caml-list] camlimages vs. labltk
[
Home
]
[ Index:
by date
|
by threads
]
[ Message by date: previous | next ] [ Message in thread: previous | next ] [ Thread: previous | next ]
[ Message by date: previous | next ] [ Message in thread: previous | next ] [ Thread: previous | next ]
| Date: | -- (:) |
| From: | Damien Doligez <Damien.Doligez@i...> |
| Subject: | Re: [Caml-list] camlimages vs. labltk |
On Thursday, March 27, 2003, at 08:46 PM, Chris Hecker wrote: > It seems like there are a couple different options: > > 1. relax the semantics of module inclusion/initialization so that > -pack can simultaneously provide the nested module syntax of > Package.Foo but it doesn't have to link all of the submodules, like a > cma > > 2. define a new namespace system and syntax (or reuse the module > syntax, not sure what the issues are there) > > Are there any other options? Did I get all of that right? How about a solution based on renaming ? Let's say I have two modules from different programmers, both named "Mylib", and I want to use them in my program. I cannot because the module system does not allow two different modules with the same name to coexist. The obvious solution is a tool that renames one of the Mylib modules. Then I can use both modules in one program. It becomes a little more complex when you consider that a module also imports other modules, referenced by their names. For example, I can have (in addition to the two "Mylib" modules) another pair of modules, Extlib and Superlib, written by two other programmers, and I want to use them both in my program. And Extlib uses one of the Mylib, Superlib uses the other one. Now if I rename the second Mylib into Mylib2, I also have to tell Superlib to use Mylib2 instead of Mylib. So I need a tool to rename modules, both as exports and as imports, then I can use any module I want, without changing anything in the language, and without the need for a universal naming scheme. -- Damien ------------------- 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