On Sat, 17 Oct 2009 14:58:08 -0400, BCS <n...@anon.com> wrote:

Hello Chris Nicholson-Sauls,

Andrei Alexandrescu wrote:

Associative arrays are today quite problematic because they don't
offer any true iteration. Furthermore, the .keys and .values
properties create new arrays, which is wasteful.
 Another issue with associative arrays is that ++a[k] is hacked, which
reflects a grave language limitation. That needs to be replaced with
a true facility.
 Any other issues with AAs that you want to see fixed, and ideas
guiding a redesign?
 Thanks,
 Andrei

Idea: the .keys and .values properties, rather than creating arrays,
could create iterable ranges with the smallest possible footprint,
internally walking the tree structure.


what will this do?

foreach(key; aa.keys)
   if(Test(key))
      aa.remove(key);


http://www.dsource.org/projects/dcollections/docs/current/dcollections.model.Iterator.html

Search for Purgeable.

I always hated that limitation of not being able to remove elements while iterating. It's one of the things I always despised about Java and C# iteration compared to C++.

-Steve

Reply via email to