4 ms·
I don't know about Dylan's implementation, but (at present) Julia uses a non-moving, non-generational accurate GC with a shadow stack, which works but doesn't p
by simonster 12y ago
I don't know about Dylan's implementation, but (at present) Julia uses a non-moving, non-generational accurate GC with a shadow stack, which works but doesn't perform all that well. There is some work underway to make it generational (https://github.com/JuliaLang/julia/pull/8699 https://github.com/JuliaLang/julia/pull/8699). However, JSC (which uses LLVM for the FTL JIT) implements a moving generational GC with a Bartlett collector, which is not fully accurate (it is accurate for heap objects but uses a conservative stack scanner) but evidently yields good performance. See https://www.webkit.org/blog/3362/introducing-the-webkit-ftl-jit/ https://www.webkit.org/blog/3362/introducing-the-webkit-ftl-... for further details. I don't think either of these approaches need explicit compiler support.