draft proposal for ref counting in D

Benjamin Thaut code at benjamin-thaut.de
Wed Oct 16 13:05:32 PDT 2013


Am 16.10.2013 21:05, schrieb Sean Kelly:
> On Oct 16, 2013, at 11:54 AM, Benjamin Thaut <code at benjamin-thaut.de> wrote:
>>
>> The problem is not that there are no GCs around in other languages which satisfy certain requirements. The problem is actually implementing them in D. I suggest that you read "The Garbage Collection Handbook" which explains this in deep detail. I'm currently reading it, and I might write an article about the entire D GC issue once I'm done with it.
>
> I think the short version is that D being able to directly call C code is a huge problem here.  Incremental GCs all rely on the GC being notified when pointers are changed.  We might be able to manage it for SafeD, but then SafeD would basically be its own language.
>

I think a even bigger problem are structs. Because if you need write 
barriers for pointers on the heap you are going to have a problem with 
structs. Because you will never know if they are located on the heap or 
the stack. Additionally making the stack percisely scannable and adding 
GC-Points will require a lot of compiler support. And even if this is 
doable in respect to DMD its going to be a big problem for GDC or LDC to 
change the codegen.


More information about the Digitalmars-d mailing list