On Saturday, 5 June 2021 at 09:14:52 UTC, Ola Fosheim Grøstad
wrote:
The current GC strategy is a dead end. No GC makes the language
too much of a C++ with no real edge. D needs to offer something
other languages do not, to offset the cost of learning the
language complexities.
I think the switch to arc with cycle detection as opt out (like
in python) is the right direction, it fits more to a system level
language making use of destructors more often.
Rewriting cyclic code to acyclic code is easier than lifetime
management in general.
Further, optimizations can be introduced that detect acyclic
structures in D just as it is the case for nim
(https://nim-lang.org/docs/manual.html#pragmas-acyclic-pragma).
That doesn't mean tracing GC is bad, I'm still skeptical that arc
+ cycle detection is better than tracing in general for true high
level languages.