Graphs

Joshua 'Schwa' Gargus schwa at cc.gatech.edu
Thu Sep 18 04:58:41 UTC 2003


Ok, my KGraph package is now on SqueakMap.  Most of the classes have
comments.  My approach to graph algorithms was inspired by the Boost
graph library, and defines hooks for specific events in each algorithm
that allow you to customize usage for your application.

Joshua

On Wed, Sep 17, 2003 at 02:15:43PM -0400, Joshua 'Schwa' Gargus wrote:
> Yes, we talked about this before, and probably should do something
> with it.  I have a simple graph module of my own I've been using...
> I'll package it up and put it on SqueakMap for comparison (it's 
> by no means complete... that's why I hadn't put it up on SqueakMap).
> I think that Monticello would be a great help for developing a 
> standard graph module.
> 
> Joshua
> 
> 
> On Wed, Sep 17, 2003 at 07:47:38PM +0200, Samir Saidani wrote:
> > Hello, 
> > 
> > I'm very interested by the development of Collection-Graph in squeak,
> > (for my PhD, I'm developping a model of dynamic graphs) and I propose
> > to share our efforts to build a common code on graphs.
> > 
> > I propose to start with the Luciano's Graph package. I attach with
> > this email a clean-up and usable version of Graph package
> > (Morphic-Graphs is now usable), in SAR format, with the right
> > dependencies (Iterator & Collections-Misc). BTW, something puzzled me
> > : if I put these two changesets in prerequisiteChangeSet of
> > Collections-Graphs, and put the Collections-Graphs in
> > prerequisitePackage of Morphic-Graphs, then loading Morphic-Graphs
> > doesn't load the changesets of collections-graphs... A bug or I miss
> > something ?
> > 
> > So, you will find below a sum-up of all people (as far as I know)
> > possibly involved on this project and proving that such a task is
> > really useful, for both external and internal needs... (Graph could be
> > used later to achieve some operations on graph dependencies, for
> > instance). Maybe could we use monticello for source management code ?
> > 
> > Regards.
> > Samir.
> > 
> > ---------------------
> > Dave Faught (NetModel) 
> > 
> > Joshua 'Schwa' 
> > 
> > "I missed this thread back in December, but I'm working on a graph
> > package too.  I'm basing the algorithms on the approach used by the
> > Boost graph library (www.boost.org), as well as on the paper
> > "Object-Oriented Design of Graph Oriented Data Structures" by Pizzonia
> > and Battista.  This allows customization of standard algorithms to
> > specific applications."
> > 
> > Daniel Vainsencher (Spaghetti Tracer) :
> > 
> > "Also, in the Spaghetti Tracer, I implemented a couple of algorithms
> > (transcribed into Smalltalk from material on the web) that are
> > interesting - linear algorithms for detecting weakly connected and
> > strongly connected components. Note that Aglo graph layout (also on
> > SM) is a (quite alpha) tool for laying out graphs - I got good results
> > for laying out not-too-big DAGs."
> > 
> > Luciano Notarfrancesco (Collections-Graphs package) :
> > 
> > "You might want to take a look at the Graphs package I just registered
> > in SqueakMap. It's a port of Mario Wolczko's graphs.st goodie (*) with
> > some additional funcionality. Look at the class side of Graph and
> > RootedGraph for some examples.  There's also a Graph-Morphs package
> > that does graph layout with two different methods: springs layout
> > (like the original MathMorphs graphs implemented by Gerardo Richarte)
> > and radial layout. You can see how it looks trying 'SpringsGraphMorph
> > new graph: RootedGraph exampleMediumTree; openInWorld', or the same
> > with RadialGraphMorph."
> > 
> > Brian T. Rice (Arrows) : 
> > 
> > "Anyway, I am also interested in the subject. One thing you might
> > distinguish is the manner of the implementation, in other words, what
> > objects are used, whether the "contents" of the graph have to be the
> > nodes themselves, how neighborhood is annotated, etc. These things
> > actually determine the behavioral type of the graph. I'm discovering
> > this, since I'm trying to write interchangeable implementations for
> > common collection concepts."
> > 
> > Ned Konz (Connector Morphs) : 
> > 
> > "Connectors may be helpful for allowing interaction and editing with
> > graphs (as well as visualization). You can query the connected
> > components and get notifications upon connection changes."Michael Cole
> > (Knowledge capture and representation system) :"I have an
> > implementation of graphs based on the math morphs work with
> > significant extensions (e.g. calculation of adjacency, reachability
> > and distance matrices, cycles etc.)  This work has been integrated
> > with Ned Konz's connectors work to visualize the graphs. I have been
> > working on pragmatic layout issues and need to implement planar
> > detection and other characteristics to support this stuff. "
> > 
> 
> 
> 
> > 
> 



More information about the Squeak-dev mailing list