Creating a Sub-view of a non - RA (hasSlicing) range.

Brad Anderson eco at gnuk.net
Tue Jul 3 09:00:45 PDT 2012


On Sat, Jun 30, 2012 at 6:27 AM, bearophile <bearophileHUGS at lycos.com>wrote:

> Tobias Pankrath:
>
>
>  But I would generally avoid SList.
>>
>
> It's not good.
>
> And in general linked lists are quite overrated. On modern CPUs it's not
> easy to find situations where a linked list is better than a dynamic array
> or a chunked array (that is a dynamic array of pointers to arrays. It's
> often used to implement deques, etc).
>
>
> Regarding arrays, maybe a StableVector will be good to have in Phobos:
> http://www.boost.org/doc/libs/**1_50_0_beta1/doc/html/**
> container/non_standard_**containers.html#container.non_**
> standard_containers.stable_**vector<http://www.boost.org/doc/libs/1_50_0_beta1/doc/html/container/non_standard_containers.html#container.non_standard_containers.stable_vector>
>
> Bye,
> bearophile
>

I also think flat_map/_set from that same boost library would be great
additions when the time comes to add new stuff to std.container.  Red black
trees are kind of a niche container[1].  I replaced almost all of my usage
of C++'s std::set and std::map with flat_map and flat_set and saw better
memory use and far fewer cache misses (assuming I was reading the profiler
correctly).  It was win-win since I rarely needed std::set/::map's
exclusive features (iterator stability, log N insertions).  I believe I've
read Andrei added something just like these to Loki.


[1] http://lafstern.org/matt/col1.pdf : Why you shouldn't use set (and what
you should use instead)

Regards,
Brad Anderson
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.puremagic.com/pipermail/digitalmars-d/attachments/20120703/cea8f5a8/attachment-0001.html>


More information about the Digitalmars-d mailing list