|
Boost : |
From: Doug Gregor (dgregor_at_[hidden])
Date: 2008-08-07 11:35:48
On Aug 6, 2008, at 8:10 AM, Andrew Sutton 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".
I'm going to have to disagree with pretty much all of this :)
There are quite a few things in the BGL that I'd love to update and
improve, but it's a solid piece of code that used in many different
applications and is actively maintained. The property map concept is
central to the use of the BGL and, while it has rough corners that we
want to smooth over (especially: it needs to be easier for users and
algorithms alike to create an efficient property map for any graph
data structure), I think the core design and implementation of the BGL
is quite solid.
Similar to what Dave said, I would certainly want to consider making
function objects into property maps (perhaps automatically), so that
we can leverage the power of boost::bind, lambda/phoenix, and C++0x
lambdas to compose property maps easily. But, I still think that can
be done within the existing framework. I expect that what we'll be
doing with the Boost.Graph version 2 work is modernizing the internals
(now that we have MPL, enable_if, and such) and simplifying the
external interface... but we'll be doing so while being careful not to
break existing code too badly.
- Doug
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk