On 5/11/2014 1:22 AM, Benjamin Thaut wrote:
Honenstly, D doesn't currently have any GC support at all. The only GC support we have is that the GC knows all threads and can halt them. And D knows which function to call, to destroy class objects. So basically we have the same level of GC support as C or C++. You could just use the Boem GC, plug it into C or C++ and have a GC that is as good as the D one.
This is not quite correct. The Boehm GC knows nothing about the interiors of structs.
The D one does (or at least has the capability of doing so using RTinfo). This means that the D collector can be 'mostly' precise, the imprecision would be for stack data.
The Boehm collector cannot move objects around, the D one can.
