Lists Home |
Date Index |
Hunsberger, Peter wrote:
>Elliotte Harold <firstname.lastname@example.org> writes:
>>Hunsberger, Peter wrote:
>>>That's exactly my point, if we ever got to the point where we could
>>>manage graphs (in general) I don't think you'd need to care about
>>We can manage graphs just fine now,
>I don't agree. Where are the graph serialization standards? Where are
>the best practice algorithms for graph traversal? Where are the
>standardized languages for graph transformation? Where are the "graph
[Rick Marshall]: over a hundred years of mathematical theory..... (i'm
getting old - might be two hundred years)
Eliotte and Rick are right, there is so much graph theory and also
attempts to apply graph theory to software.
In math, a graph is just a pair of sets (V,E) vertices and edges, and
you use indices v1,v2 ... to talk about nodes. Many theorems are quite
accessible, elegant, beautiful and useful.
Theory of graph transformations are already a much more diverse and
Programming language researchers were particularly interested in this,
because you can implement call-by-need lambda calculus (and other Turing
complete minimal functional programming language based on it) using
(specific) graph reduction systems. This is a clear example of why the
application area matters.
Since all attempts to explicitly with graphs suffer from representation
complexity, if you are invested in graphs, it pays off to use special
purpose data representations, and not a generic one. For all other
purposes (exchange of information, serialization, deserialization),
using XML with ID,IDREF is of course a choice, but there is no big gain.
The battle of representations for general-purpose programming is long
over. Objects have won by-and-large. Object graphs, object repositories,
object-oriented programming is here to stay.
The next big thing will be a combination of XML transformations (say
XQuery or XSLT) and object-oriented programming (like attaching methods
to some XML). Compared to this, data binding techniques will finally
look like a bad joke.
And it will probably never be standardized, but several solutions will
be heavily marketed, given the big players in software.