Robert Jacques wrote:
Based on a thread on the DMD concurrency mailing list I've begun to get a sinking regarding the future of the garbage collector in D: most of the work in GC algorithms has gone into functional and (mostly) pure-OO languages, leaving a multi-paradigm systems programming language like D out in the cold. So far, I know mark-sweep and mark-region algorithms in either serial, parallel or thread-local forms should work. But based on Java we'd really like incremental, generational and/or concurrent options. So I'd like to ask people to help brainstorm some ideas.

Some things I've run into:
-structs/pointers/slices/etc make finding memory meta information, like mark-bits or ref-counts, non-trivial. -C function calls and assembler blocks make code instrumentation questionable. -Getting concurrent GC code correct is very hard. Boehm's algorithm, for instance, looks extremely racy.

Thanks!

s/sinking/thinking/

http://www.youtube.com/watch?v=gmOTpIVxji8

:o)


Andrei

Reply via email to