On 02/16/12 17:06, Timon Gehr wrote: > On 02/16/2012 02:03 PM, Artur Skawina wrote: >> If you have a library with several modules, accessible with eg >> "import lib.blah;" what happens if you try to use this lib module >> from your app placed in a blah.d file? >> >> blah.d:6: Error: module blah from file lib/blah.d conflicts with another >> module blah from file blah.d >> >> IOW, the default flat namespace is a really bad idea. >> Adding a "module lib.blah'" line to lib/blah.d makes things work, but >> shouldn't be necessary; is there a reason why "import" is stripping >> everything but the basename? >> For non-renamed imports accessing the module (which should be rare) >> using the full name (lib.blah in this case) will be enough. > > I agree that it is a poor default. Is it in the spec?
Hmm. The module *name* is specified as the basename, but i don't see anything preventing using "package.module", instead of just "module". artur