I wonder about the idea of representing and executing programs using graphs. Some kind of stackless model where the each node in the graph represents a function and the edges represent arguments to the functions. In this way a function doesn't return the result to its caller,but passes the result as an arg to another function node. Total nonsense? Or maybe it is just a state machine in disguise? Any actual implementations of this anywhere?
+1
A:
I think Dybvig's dissertation Three Implementation Models for Scheme does this with Scheme.
I'm pretty sure the first model is graph-based in the way you mean. I don't remember whether the third model is or not. I don't think I got all the way through the dissertation.
Nathan Sanders
2010-02-08 16:14:21
Right. But doesn't anything is just a state machine ?
bugspy.net
2010-02-08 17:13:21
I didn't notice your comment, "maybe it is just a state machine in disguise" comment in the original question.
Brian
2010-02-08 17:41:53