On Tuesday, 29 September 2015 at 23:20:31 UTC, Steven Schveighoffer wrote:

yeah, that could probably be done. One thing to note is that these classes are from ages ago (probably close to 10 years). New API suggestions may be allowed.


-Steve

I'm still thinking about my last rant, here... So by new API, do you mean just adding a couple of new functions, or rewriting a new Condition class(as is the plan for streams)?

Since D is moving towards a phobos with no GC, what will happen to things that are classes like Condition and Mutex?

If DIP74 were implemented, Condition and Mutex could be made ref counted, but DIP74 seems like something that will be very complicated, and may not happen for a long time.

So the only other alternative is to make it a struct, but for a Mutex, that would prevent you from doing this:

Mutex m = new Mutex();
synchronized(m) { }

I also don't mind the way that the current streams are made up of a class hierarchy.

Although inheritance is overused sometimes, I don't think it's bad. But, if I'm correct about the current trend in D, it seems any new stream stuff will end up getting flattened into some template/struct solution.

Any comments on this?

Thanks,

   Bit

Reply via email to