Semantic Version Control

From: "andrew cooke" <andrew@...>

Date: Mon, 14 Jul 2008 23:11:46 -0400 (CLT)

How long before version control for source becomes semantic-based?  In
other words, when will diffs become actions like "move method" or "rename
variable" rather than syntactic changes?

It will need closer integration between IDE and VCS - probably a standard
abstract syntax representation.  It might also require a certain kind of
language (in some ways this would be much easier with Lisp, for example,
but I am thinking more of a language which emphasises semantic chunks,
although I have no idea what that actually means).

A quick google turns up some work on adding an extra layer of abstraction
to the source (by modelling or ontologies), if I understand correctly, but
there doesn't seem to be anything close to what I sketch above.

IntelliJ is heading this way and I was impressed (although I am now back
in the land of the free Eclipse, largely because it has better Python
support).  I wonder if they are considering something like this?  I guess
it's still too far down the line.

Andrew