Subject: Re: [boost] Boost.Graph Metagraph project
From: Gordon Woodhull (gordon_at_[hidden])
Date: 2011-01-24 13:56:54
Hi Joel -
> Some advanced compilation techniques require a directed acyclic graph instead of an AST. DAG usually helps to find basic blocks and other fundamental code fragment. We want to get down to this level for some fine grain parallelization task in real-time constraints code generation where we may need to split series of statement in non-trivial way. In this case, the DAG allow us to "see" where the code can be splitted without error.
> As i never found how to make some CT structure looking like an AST but with a way to get the parent node, DAG is next best thiung we have in store
So is it a DAG or a tree with parent accessors you're looking for?
Right now with using MPL.Graph you would pay for copying the whole structure into an mpl map-of-maps. There's an argument to be made that the library should support a mode where some concepts are implemented by adapting existing constructs (as I demonstrated before) and the metadata to support other concepts is constructed as needed.
If you'll recall, last time we talked about this, we discovered that adapting Proto would require sort of a Fusion.Graph... Stay tuned!
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk