On Sunday, 2 November 2014 at 08:48:46 UTC, Jonathan Barnard
wrote:
The upcoming version 1.4 of Go uses write barriers in
preparation for the future implementation of a concurrent and
generational GC. On the mailing list thread discussing the beta
(https://groups.google.com/forum/#!topic/golang-nuts/7VAcfULjiB8),
a few people note speed reductions of 30-50% in their
benchmarks. I think this vindicates to a degree D's decision to
avoid garbage collection strategies that require write barriers.
Write barrier are only required on objects that contain mutable
pointer and are shared. in D, that is a subset of the shared
heap. D's type system would allow to use such strategy while
mitigating the cost quite a lot.