
Apologies if this request isn't 'appropriate' for this venue (perhaps it's a Haskell' request and/or has been discussed before)... I'd like it if there were a "Data.Graph" in the base libraries with basic graph-theoretic operations. Is this something that's been discussed? For now, it appears that Graphalyze on Hackage is the most complete library for graph analysis; is that right? (I actually usually just want a pretty small subset of its functionality.) Thanks, Lee

Sorry for the duplicate email Lee, but I somehow forgot to CC the
mailing list :s
On 31 March 2010 13:12, Lee Pike
I'd like it if there were a "Data.Graph" in the base libraries with basic graph-theoretic operations. Is this something that's been discussed?
I'm kinda working on a replacement to Data.Graph that will provide graph-theoretic operations to a variety of graph types.
For now, it appears that Graphalyze on Hackage is the most complete library for graph analysis; is that right? (I actually usually just want a pretty small subset of its functionality.)
Yay, someone likes my code! :p I've been thinking about splitting off the algorithms section of Graphalyze for a while; maybe I should do so now... (though I was going to merge it into the above mentioned so-far-mainly-vapourware library...). There are a few other alternatives: * FGL has a variety of graph operations (but I ended up re-implementing a lot of the ones I wanted in Graphalyze because FGL returns lists of nodes and I wanted the resulting graphs for things like connected components, etc.). * The dom-lt library * GraphSCC * hgal (which is a really atrocious port of nauty that is extremely inefficient; I've started work on a replacement) * astar (which is "generic" for all graph types since you provide functions on the graph as arguments) With the exception of FGL, all of these are basically libraries that implement one particular algorithm/operation. -- Ivan Lazar Miljenovic Ivan.Miljenovic@gmail.com IvanMiljenovic.wordpress.com

Thanks, Ivan, for the note about the other alternatives and about possible additions to your library (and of course for the library itself!). I should mention that I completely missed containers in the hierarchical libraries (I was just looking in the base libraries). Sorry about that. Lee On Mar 30, 2010, at 7:23 PM, Ivan Miljenovic wrote:
Sorry for the duplicate email Lee, but I somehow forgot to CC the mailing list :s
On 31 March 2010 13:12, Lee Pike
wrote: I'd like it if there were a "Data.Graph" in the base libraries with basic graph-theoretic operations. Is this something that's been discussed?
I'm kinda working on a replacement to Data.Graph that will provide graph-theoretic operations to a variety of graph types.
For now, it appears that Graphalyze on Hackage is the most complete library for graph analysis; is that right? (I actually usually just want a pretty small subset of its functionality.)
Yay, someone likes my code! :p
I've been thinking about splitting off the algorithms section of Graphalyze for a while; maybe I should do so now... (though I was going to merge it into the above mentioned so-far-mainly-vapourware library...).
There are a few other alternatives:
* FGL has a variety of graph operations (but I ended up re-implementing a lot of the ones I wanted in Graphalyze because FGL returns lists of nodes and I wanted the resulting graphs for things like connected components, etc.). * The dom-lt library * GraphSCC * hgal (which is a really atrocious port of nauty that is extremely inefficient; I've started work on a replacement) * astar (which is "generic" for all graph types since you provide functions on the graph as arguments)
With the exception of FGL, all of these are basically libraries that implement one particular algorithm/operation.
-- Ivan Lazar Miljenovic Ivan.Miljenovic@gmail.com IvanMiljenovic.wordpress.com

Lee Pike
I should mention that I completely missed containers in the hierarchical libraries (I was just looking in the base libraries). Sorry about that.
Oh, I thought you had done what most of us do: seen Data.Graph in containers and promptly dismissed it... >_> (IIRC, it doesn't really have many graph operations defined there.) -- Ivan Lazar Miljenovic Ivan.Miljenovic@gmail.com IvanMiljenovic.wordpress.com

Oh, I thought you had done what most of us do: seen Data.Graph in containers and promptly dismissed it... >_>
(IIRC, it doesn't really have many graph operations defined there.)
Yes, you're right---I just wanted to acknowledge that I'd missed that there was *something* there... Lee

There are a number of us over on #hnn on freenode hacking away on the
beginnings of a shiny new graph library based on some new tricks for
annotated structures. Feel free to swing by the channel.
-Edward Kmett
On Tue, Mar 30, 2010 at 10:23 PM, Ivan Miljenovic wrote: Sorry for the duplicate email Lee, but I somehow forgot to CC the
mailing list :s On 31 March 2010 13:12, Lee Pike I'd like it if there were a "Data.Graph" in the base libraries with basic
graph-theoretic operations. Is this something that's been discussed? I'm kinda working on a replacement to Data.Graph that will provide
graph-theoretic operations to a variety of graph types. For now, it appears that Graphalyze on Hackage is the most complete
library
for graph analysis; is that right? (I actually usually just want a
pretty
small subset of its functionality.) Yay, someone likes my code! :p I've been thinking about splitting off the algorithms section of
Graphalyze for a while; maybe I should do so now... (though I was
going to merge it into the above mentioned so-far-mainly-vapourware
library...). There are a few other alternatives: * FGL has a variety of graph operations (but I ended up
re-implementing a lot of the ones I wanted in Graphalyze because FGL
returns lists of nodes and I wanted the resulting graphs for things
like connected components, etc.).
* The dom-lt library
* GraphSCC
* hgal (which is a really atrocious port of nauty that is extremely
inefficient; I've started work on a replacement)
* astar (which is "generic" for all graph types since you provide
functions on the graph as arguments) With the exception of FGL, all of these are basically libraries that
implement one particular algorithm/operation. --
Ivan Lazar Miljenovic
Ivan.Miljenovic@gmail.com
IvanMiljenovic.wordpress.com
_______________________________________________
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe
participants (4)
-
Edward Kmett
-
Ivan Lazar Miljenovic
-
Ivan Miljenovic
-
Lee Pike