Back to results

University of Illinois at Urbana-Champaign

Identifying similar code fragments in Haskell

Abstract

dc:description

Identifying 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 × 4

Rights

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

Chain of custody

source
Harvested from
University of Illinois - Urbana-Champaign
Base URL
www.ideals.illinois.edu/oai-pmh
Last updated
2026-07-22
Source record
OAI-PMH GetRecord
citation

Vardishvili, Mariam. Identifying similar code fragments in Haskell. Thesis thesis, University of Illinois at Urbana-Champaign, 2020. http://hdl.handle.net/2142/106294