|Comparing two programs... firstname.lastname@example.org (Ira Baxter) (1998-10-05)|
|From:||Ira Baxter <email@example.com>|
|Date:||5 Oct 1998 20:48:20 -0400|
We have a downloadable tool ("CloneDR", see website) that detects code
clones in C and C++ code in and across multiple files. It operates by
comparing abstract syntax trees (which means it really works with any
language for which you have a grammar), and detects exact and
near-miss clones. It should be pretty close to ideal for detecting
code-copying in programming classes; simply feed it *all* the class
assignments and let it find the duplicates.
Our interest is in removing redundant code from large legacy systems
(typically, 10%). (A commercial version of the tool does this on
serious scale.) The tool can also be used to support domain
engineering by identifying domain idioms. A paper on how it works
will be presented at the 1998 International Conference on Software
Maintenance. "Clone Detection Using Abstract Syntax Trees".
Ira Baxter, Ph.D. email:
Semantic Designs, Inc. voice: 512-250-1018 x140
12636 Research Blvd. #C-214 FAX: 512-250-1191
Austin, Texas 78759-2200 http://www.semdesigns.com
Return to the
Search the comp.compilers archives again.