This question on "programmers.stackexchange.com" questions the complexity of the C#/.NET namespace/module/dll system in relation to more elegant approaches taken by other languages.
http://programmers.stackexchange.com/questions/149056/why-do-net-modules-separate-module-file-names-from-namespaces I'm not an expert in the D programming language, but i's module system seems to be nowhere near as baroque as the C#/.NET way. If anyone would care to chime in regarding D on that stack exchange question, it would be appreciated.