Reference-Counted Data Structures for D
- Mentors
- Russel Winder, wilzbach, Andrei Alexandrescu
- Organization
- D Programming Language
Currently, D’s built-in data structures (arrays and associative arrays) and
Phobos collections (e.g. std.container.rbtree
) rely on garbage collection.
This has a number of issues, including the inability to use them when compiling
with -betterC
, GC pauses, and memory usage being nondeterministic.
The goal of this project is to implement @nogc @safe
versions of common data
structures through the use of reference counting for memory management.
Reference counting is already being used with success by other systems
programming languages (such as C++) for the same purpose. With recent work by
Eduard Staniloiu on __RefCount
, an official implementation of these
collections can be added to D’s standard runtime.