Wednesday December 5, 2007. 12:08 AM
FreshMeat
Daikon is an implementation of dynamic detection
of likely invariants. An invariant is a property
(such as "x=2*y+5" or "this.next.prev = this" or "myarray is sorted by <")
that holds at a certain point or points in a
program. Invariants are often seen in assert
statements, documentation, and formal
specifications. Invariants can be useful in
program understanding and a host of other
applications. Daikon runs a program, observes the
values that the program computes, and then reports
properties that were true over the observed
executions. It can detect properties in Java, C,
C++, Perl, and IOA programs, in spreadsheet files,
and in other data sources.
License: Open Software License
Changes:
Dyncomp (Java) was enhanced with a number of new options. It has a new significantly faster mode where it only tracks references (and not primitives). It also has additional output that makes it easier to determine where interactions occurred.