3 ms·
I think one of the issues is that Rc and Gc are not particularly ergonomic! Used at scale, they add noise/non-readability to any screen of code (Rc::clone, the
by btown 4y ago
I think one of the issues is that Rc and Gc are not particularly ergonomic! Used at scale, they add noise/non-readability to any screen of code (Rc::clone, the various approaches for Gc in [0], for instance) that simply wouldn't be there in a dynamic language.
Now, one might argue that this explicitness is good! But it's definitely an extra bunch of things to type when you're building something where you don't care about memory management.
[0] https://manishearth.github.io/blog/2021/04/05/a-tour-of-safe-tracing-gc-designs-in-rust/ https://manishearth.github.io/blog/2021/04/05/a-tour-of-safe...
- zozbot234 4y agoFWIW, there's a newer concurrent cycle-tracing GC for Rust known as Samsara. Writeup here: https://redvice.org/2023/samsara-garbage-collector/ https://redvice.org/2023/samsara-garbage-collector/ It seems that it manages to be more efficient and intuitive to use compared to earlier approaches.
- amelius 4y agoPerhaps Rust syntax could be enhanced to make Gc more ergonomic?