std.allocator is ready for the review

Andrei Alexandrescu via Digitalmars-d digitalmars-d at puremagic.com
Thu Jun 11 15:16:47 PDT 2015


Well, we're finally there. std.experimental.allocator is ready for review.

There are over 11KLOC (including unittests and ddoc source) to deal 
with, so I wanted to give the community a head start in looking over it 
prior to the official review period.

What std.experimental.allocator is:

* A hookable interface for allocating and releasing memory.

* A systematic and hierarchical approach to global allocation, spanning 
the stack, thread-local storage, and process-level memory.

* A collection of quality implementations of typical memory allocation 
strategies, including free lists, regions, bitmapped blocks, bucketized 
size-specialized allocators, and more.

* A framework for easy assembly and experimentation with custom 
allocation strategies.

* An integration of types within the allocation strategy, allowing 
concrete allocators to exploit various characteristics of the types they 
are allocating.

What std.experimental.allocator is not:

* An abstraction of lifetime management, e.g. transparently choosing 
between tracing vs. reference counting.

* An abstraction of notions such as "address", "pointer", and "reference".


Andrei


More information about the Digitalmars-d mailing list