I don't understand this statement. If a module is just a bundle of definitions, I have to be able to access those definitions somehow in order to use them. This means that some names have to be defined. What if two modules define the same name (e.g., both define Morph, but in different ways. Why is that not a conflict? I don't think that you can get away from this by saying that each module defines its own namespace, for example, that there is no name Morph but only UI Morph . If I am to be able to make use of that namespace (UI), then at least one name outside of the namespace must be defined too. What if two modules conflict by defining the same name in the importing namespace? In other words, if I can't just say Morph , but have to say UI Morph , doesn't that just move the potential for conflict from the name Morph to the name UI ? (apb) |