[D-runtime] Merge core.sync package into a single module?

Jacob Carlborg doob at me.com
Thu Oct 4 23:58:52 PDT 2012

On Oct 05, 2012, at 06:13 AM, Alex Rønne Petersen <xtzgzorex at gmail.com> wrote:

> I'm of the opinion that a module is a collection of very similar
> functionality, typically things that you would use together in the
> same code - I think the core.sync package fits that criteria pretty
> well (for instance, you can rarely use a condition variable without a
> mutex).
Then just add a module "core.sync.all" that imports all modules in that package. Again we need compiler support for "import pack.*" to import all modules of a package. We do have this module system for a reason and it's pretty flexible.

> I'm not quite sure what your point is about "as large abstractions as possible"?
A lot of people seems to have a habit of writing large modules, classes and methods. Phobos is a perfect example of this.

> I think the comparison is way exaggerated. std.datetime is 30k+ lines
> while the core.sync package totals 2.2k lines. I know what you're
> saying, I'm just not sure it really applies here.
I don't think we need to divide the modules in core.sync, they have a good size, it was more how I see it in general. BTW, creating a single module of the core.sync package will just break code for, in my opinion, a very bad reason.

/Jacob Carlborg
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.puremagic.com/pipermail/d-runtime/attachments/20121005/9a98921a/attachment.html>

More information about the D-runtime mailing list