University of Illinois at Urbana-Champaign
Identifying similar code fragments in Haskell
Abstract
dc:descriptionIdentifying syntactically or functionally similar code fragments in source code is an important research question in software engineering. Many researchers pointed out that detecting and refactoring code clones can be beneficial for software maintenance purposes. This work presents a clone detector algorithm. The proposed approach uses a source code AST representation and identifies similar fragments by generating and filtering pattern trees created from subtree pairs. The algorithm extends the existing technique of tree comparison by including Munkers assignment algorithm (The Hungarian method) and the longest common subsequence algorithm. Munkres assignment algorithm helps to identify rearranged code fragments. The LCS algorithm is used to compare subtrees of different syntactic variants. Experiments showed that these algorithms can help better evaluate code fragments to identify duplicates.
Degree
thesis:*- Name thesis:degree_name
- M.S.
- Level thesis:degree_level
- Thesis
- Discipline thesis:degree_discipline
- Computer Science
- Grantor
- University of Illinois at Urbana-Champaign
- Year dc:date
- 2020
Author and committee
dc:creator, dc:contributor.*- Author dc:creator
-
- Vardishvili, Mariam
- Contributors dc:contributor
-
- Gunter, Elsa L
Subjects
dc:subject × 4Rights
dc:rights- Statement dc:rights
-
- Copyright 2019 Mariam Vardishvili
- Language dc:language
- en
Identifiers
dc:identifier.*- Handle dc:identifier
- http://hdl.handle.net/2142/106294
- OAI identifier oai:identifier
- oai:www.ideals.illinois.edu:2142/106294