I've been thinking for a long time about the question of why production rules and logic programming are less popular than they are, and one of them is much like what you point out: if the parts of your program form a graph that is assembled by the runtime/compiler, each node (roughly a line of code in a normal programming language) has to be annotated with enough information to find the nodes it connects with -- much of which is implicit in the structure of a normal sequential program.