On Monday, 29 September 2014 at 12:29:33 UTC, Dicebot wrote:
Any assumption that library code can go away with some set of
pre-defined allocation strategies is crap. This whole
discussion was about how important it is to move allocation
decisions to user code (ranges are just one tool to achieve
that, Don has been presenting examples of how we do that with
plain arrays in DConf 2014 talk).
I think the key to this sort of issue is to try and get as much
functionality in Phobos marked @nogc as possible. After that,
building new library-like functionality into a DUB package that
assumes @nogc and only uses the @nogc code in Phobos would be the
next step. Should that get to a state where it's popular and
supported, pulling it in as std.nogc.* might make sense, but
trying to redo Phobos as a manual memory collection library is
infeasible.
Were I your company, I'd start working on leading such an effort.
Unlike Tango, I don't think a development like this would split
the community nor the community's resources in a useless fashion.