I wonder a bit why you want one file per object? Is it to avoid unnecessary imports? Make finding object definitions easier? Or a style preference? I think replies by others covered all but the first question. I use the "import std.foo: bar, baz;" syntax for that.
Generally speaking, separating unrelated code is a good idea, but I think closely coupled code should go in the same file. I've heard that circular imports are buggy in D. Matthew Ong Wrote: > Hi, > > According to: > http://www.digitalmars.com/pnews/read.php?server=news.digitalmars.com&group=digitalmars.D&artnum=135947 > > And also source code within dmd2/src > It seems that there is only one file per module. > > Is module similar to a single java package and namespace in VC++/C#? > > If yes, most name spaced programming language allow breaking of single module > into multiple > file to store various logically linked class and separate them when they are > not. > > Like module Collection may have: > Common interfaces for both HashMap, LinkedList and hashlist. > > But they should be all be in different source file(HashMap.d, LinkedList.d, > HashList.d) but > logically within the same module collection.(Directory) > How do I do that within D? what is the directory layout of the project? > > Matthew Ong