On Oct 9, 2013, at 9:24 PM, Jonathan M Davis <jmdavisp...@gmx.com> wrote: > > And given that std.concurrency requires casting to and from shared or > immutable in order to pass objects across threads, it seems ilke most of D's > concurrency model requires casting to and/or from shared or immutable.
std.concurrency won't be this way forever though. We could fake move semantics with something like assumeUnique!T, so send could be modified to accept a non-shared class that's marked as Unique. The other option would be deep copying or serialization.