Recently I put in the final piece of a mini project I’d been thinking about for a while. I made a change to an Agent Ralph source file and committed it to my Mercurial repo. Within about a minute I was browsing the MbUnit test results. Now that may not sound very exciting, but it [...]
Archives for the ‘Uncategorized’ Category
The Oscillating Shrinking Window
Saturday, 29 August 2009
I talked previously about how Agent Ralph identifies functionally equivalent methods. It also can find clones embedded within a method, as shown at the end of my last post. This time I’ll talk a bit about how that works.
Agent Ralph’s preferred unit of comparison is the method. The comparison implementation accepts two methods and walks their ASTs, [...]
Agent Ralph In Action
Wednesday, 5 August 2009
I’ve been yack yack yacking about clone detection and Agent Ralph. It’s time to put up or shut up. This post is some screen shots of Agent Ralph in action.
Agent Ralph’s front end is a Resharper plug-in. Any clones detected are passed up to the plug-in which presents them to the user as highlights and quick [...]
An Idea For Robust Clone Detection Using Abstract Syntax Trees
Sunday, 19 July 2009
My last post concluded with the promise to go into detail on some implementation ideas of my clone analyzer.
As I argued previously, a text based matching tool is not good enough, it’s simply too easy to fool. What we want is a matching tool that considers the full syntax of the language being analyzed. [...]