
You might also consider that the BGL is fairly dated and stagnant, and in need of some serious TLC. Whether or not property maps continue to exist in the same form in future renditions of the library is anybody's guess - I'm leaning towards "no".
Hm, and what do you propose as an alternative? I can't see how we could do without them.
I might like some trivial syntactic changes
get(m, k) ==> m(k) put(m, k, v) ==> m(k,v)
but that's about it.
Basically, yeah. With the addition of lambda expressions, the put/get functions could basically disappear, and the act of building property maps becomes the art of writing lambda functions. At least, that's the theory. The concepts don't really change either. There can still a read, write, and lvalue concepts. They just appear as: m(k) // read m(k, x) // write m(k) = x // lvalue Or something like that. I have part of an implementation of new property maps in my SoC directory (sandbox/SOC/2008/graphs). Andrew Sutton asutton@cs.kent.edu