
on Thu Aug 07 2008, Andrew Sutton <asutton-AT-cs.kent.edu> wrote:
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
Personally I don't think there should be an lvalue concept. Is there really an algorithm that requires it?
Or something like that. I have part of an implementation of new property maps in my SoC directory (sandbox/SOC/2008/graphs).
OK, but that's certainly not "property maps continue to exist in the same form...." Ugh, now that I copied your words out, I realize you said "the same" and not "some," which changes everything. Sorry for the noise. It pays to read carefully. -- Dave Abrahams BoostPro Computing http://www.boostpro.com