Fusion.Graph?

Gordon Woodhull <[email protected]> Wed, 30 Mar 2011 18:26:13 -0400
Newsgroups gmane.comp.parsers.spirit.devel
Message-ID <[email protected]>
Hi Fusion Developers,

I am posting to the Spirit list since I think all Fusion developers are Spirit developers.  Please let me know if I have missed someon.

Can I hear some ayes or nays from the Fusion authors for calling a proposed library for simple heterogeneous graph data structures Fusion.Graph?  

I think this name provides the easiest way to explain what the library does: it produces a network of heterogeneous objects which contain pointers or containers of pointers to other objects in the network.  I am not convinced that this is the only way heterogenous graphs could be implemented, but I think it is the simplest.

There is a rudimentary implementation of it available in the metagraph area of the sandbox, which is less than 100 lines because it a very straightforward application of Fusion maps and STL containers.  I have started to implement a version of the BGL graph concepts for this data structure.  It will grow with whatever graph algorithms are appropriate, but the class of heterogenous graph algorithms hasn't really been defined yet.*  

I expect to have something ready for review in the next year, after MPL.Graph.

The Metagraph that I occasionally mutter about, is one level of abstraction above this.  Fusion.Graph is the implementation class for that one, which cleans up the picture by overlaying patterns.

Does this sound like a good idea, or should I find another moniker to describe this work-in-progress?

Thanks,
Gordon

* Note for example that a full depth first search of a Fusion.Graph iterates for each node on a fusion container of pointers and containers of pointers, recursing on each pointer to another node of a different type.
------------------------------------------------------------------------------
Create and publish websites with WebMatrix
Use the most popular FREE web apps or write code yourself; 
WebMatrix provides all the features you need to develop and 
publish your website. http://p.sf.net/sfu/ms-webmatrix-sf