1. Just keep the current spec and deal with it. Some containers
are and will remain garbage collected because they started as
such. Add new containers that are better alongside them.
2. Do break compatibility of containers, mainly by taking
advantage of them being under-documented. In a way we wouldn't
break much because not much has been specified. There are,
however, parts where we'd need to change specification.
3. Leave std.container alone and move forward with
std.experimental.collection. I am confident the language and
its endorsed idioms have reached enough maturity to not make
this addition into a regular event.
Andrei
3 or 2.
std.allocator support is important as well (otherwise may as well
continue rolling my own incomplete containers).
std.container was always 'sorta usable' but never good enough.