[phobos] Why does std.concurrency public import a bunch of synchronization primitive modules from druntime?

Alex Rønne Petersen xtzgzorex at gmail.com
Wed Apr 25 17:47:10 PDT 2012


I just noticed that std.concurrency public imports more or less all of
the synchronization modules from druntime. This caused a whole bunch
of name conflicts in my code. Is this really needed? The average code
written with std.concurrency is not going to need *any* of these
primitives - I mean, that's the entire idea. In my case, I'm doing
very low-level hackery/abuse inside a garbage collector
implementation, so that doesn't really count as normal usage.

I know it would be a breaking change, but could we please get rid of
those public imports? I honestly doubt anyone's relying on these, and
they're frankly a pain in the ass.

(Also, the core.thread import is private, but these are public - wat?)


More information about the phobos mailing list