Boost logo

Boost :

From: Gordon Woodhull (gordon_at_[hidden])
Date: 2008-04-26 22:24:59


Hi friends -

I just uploaded the first two of the metagraph libraries to the
sandbox. These are
* an mpl_graph for bgl-like graphs in c++ metaprogramming ( s/(/</ )
* a fusion_graph for basic heterogeneous-typed graphs where edges
describe the links (pointers, containers of pointers) and vertices are
the types of objects.

There is a long way to go, but I wanted to post something in advance
of BoostCon to invite conversation.

The eventual idea is to make graphs-of-graphs, graphs that refer to
other graphs, and graph layers of detail, all easy to specify and
use. One would combine patterns such as "graph," "tree," or "chain,"
to build more complex data structures without resorting to inefficient
overgeneralizations or unsafe ad-hoc methods. Along the way I will
also offer Yet Another Reflection Mechanism: much as any graph data
structure can be adapted as a Boost Graph, any system of objects which
refer to one another can be reflected as a metagraph.

What is available now just allows you to build systems of objects with
pointers (or containers of pointers) to each other, which is mostly
useful to library developers wanting to generate such types at compile
time. They are not yet managed, by which I mean, all of the cross-
referencing that naturally takes place in such systems has to be kept
track of by the application, or by metagraph libraries yet to be
written...

Thanks in advance for any comments, references to related libraries,
etc.
Gordon


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk