- Home
- Code Clone Detection Tools
- CloneWorks
CloneWorks
What it is
CloneWorks prepares source code into fragments and detects code clones within them. Its input builder accepts Java, C, C++, C#, and Python, with extraction at block, function, or file granularity. The token-based detector accepts a minimum similarity threshold from 0.0 to 1.0, and the repository describes a test run that performs Type-3 clone detection. A partitioned partial-index mode is available when an index exceeds available memory, but its partition size must be determined experimentally. CloneWorks runs on Linux, macOS, and Windows and requires FreeTXL 10.6 or later, gcc, make, and Java 7 or later. The input builder runs more slowly on Cygwin because process creation is slower on Windows. CloneWorks is free to use, with a license requiring acknowledgement; copies, modifications, and derivatives must remain under that license and be distributed without charge. The license provides the software as-is without warranty, including implied warranties of merchantability or fitness for a particular purpose. The maintainer invites questions and bug reports by email and offers assistance with using the tool.
For and against
For
- Supports five listed programming languages
- Extracts blocks, functions, or files
- Similarity threshold ranges from 0.0 to 1.0
- Runs on Linux, macOS, and Windows
Against
- Requires FreeTXL, gcc, make, and Java
- Cygwin input building is slower
- Partition size must be determined experimentally
- Provided as-is without warranty
The verdict
CloneWorks offers configurable source preparation and token-based clone detection across several languages. Check the prerequisites, Windows limitation, and no-charge redistribution terms before adopting it.
Who it suits
CloneWorks suits developers or researchers who need to prepare source code and locate clones across supported languages. It may fit users comfortable with its stated build requirements and license conditions.
Plans and prices
CloneWorks
Use requires acknowledgement; no charge may be made · Redistribution and derivatives must use this license and be free of charge
Read 3 Oct 2026 · github.com
On the record
- Clone types
- The repository describes a test run that performs Type-3 clone detection.github.com · read 3 Oct 2026
- Granularity
- The input builder supports block, function, and file granularity for code extraction.github.com · read 3 Oct 2026
- Languages
- The input builder lists Java, C, C++, C#, and Python as supported input languages.github.com · read 3 Oct 2026
- Large inputs
- A partitioned partial-index mode is available when the index exceeds available memory, and the README says its partition size must be determined experimentally.github.com · read 3 Oct 2026
- License terms
- The license permits copying, modification, and redistribution of CloneWorks and derivatives if they remain under the license and are distributed without charge.github.com · read 3 Oct 2026
- Purpose
- CloneWorks prepares source code and detects code clones in the prepared fragments.github.com · read 3 Oct 2026
- Similarity threshold
- The clone detector accepts a minimum similarity threshold from 0.0 to 1.0.github.com · read 3 Oct 2026
- Support
- Jeffrey Svajlenko invites questions and bug reports by email and says he is happy to assist with using CloneWorks.github.com · read 3 Oct 2026
- System requirements
- CloneWorks requires FreeTXL 10.6 or later, gcc, make, and Java 7 or later.github.com · read 3 Oct 2026
- Warranty
- The license provides CloneWorks as-is without warranty, including implied warranties of merchantability or fitness for a particular purpose.github.com · read 3 Oct 2026
- Windows limitation
- The README says the input builder is slower on Cygwin because process creation is slower on Windows.github.com · read 3 Oct 2026