You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+3-3Lines changed: 3 additions & 3 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -10,15 +10,15 @@
10
10
11
11
DiffDetective is a research software to study the evolution of configurable and variational software projects, also known as software product lines.
12
12
13
-
DiffDetective reads the git history of a C-preprocessor-based software product line to analyze patches in terms of _variation diffs_[1].
13
+
DiffDetective reads the Git history of a C-preprocessor-based software product line to analyze patches in terms of _variation diffs_[1].
14
14
A variation diff is a variability-aware diff that depicts changes to source code as well as to variability annotations (e.g., C-preprocessor macros such as `#if` and `#ifdef`).
15
15
16
16

17
17
18
18
This figure outlines the parsing process within DiffDetective.
19
19
Given two states of a C-preprocessor annotated source code file (left), for example before and after a commit, DiffDetective constructs a variation diff (right) that describes the differences of the code as well as the involved variability.
20
20
DiffDetective can construct a variation diff either from a text-based diff between both file versions (center path),
21
-
or by first parsing both versions to an abstract representation, a variation tree (center top and bottom).
21
+
or by first parsing both versions to an abstract representation, a variation tree (center top and bottom), and constructing a variation diff using a tree matching algorithm in a second step.
22
22
23
23
## Publications
24
24
@@ -31,7 +31,7 @@ The idea of a view is to act as a filter on relevant parts of a system.
31
31
For instance, a piece of source code may be deemed relevant if it implements a certain feature.
32
32
33
33
Views on edits extend views to software changes.
34
-
A view on an edit thus is a simplified form of an edit that, for example, contains only those changes to a certain feature.
34
+
A view on an edit thus is a simplified form of an edit that, for example, contains only changes to a certain feature.
35
35
We implemented views on edits for variational systems in terms of views on variation diffs.
36
36
37
37
Our replication package and further information can be found in the [README](replication/splc23-views/README.md) file in the respective directory (`replication/splc23-views`).
0 commit comments