Skip to Main Content
 

Global Search Box

 
 
 
 

ETD Abstract Container

Abstract Header

SUPPORTING SOFTWARE EXPLORATION WITH A SYNTACTIC AWARE SOURCE CODE QUERY LANGUAGE

Abstract Details

2017, PHD, Kent State University, College of Arts and Sciences / Department of Computer Science.
The dissertation presents a technique for querying source code at an abstract syntax tree (AST) level. The main focus is the development of a language that can be used both for querying source code and for locating places within a body of source code to apply a transformation. The goals of the query language are to be easy to learn, use pieces of source code as part of the query, be sub-second fast for most queries, not require compilation in order to generate the AST, and it must provide extensions for handling an abstract syntax tree rather than being a tree querying language used on an AST. To this end, the srcQL (i.e., source code Query Language) is presented. srcQL operates on an XML representation of source code, namely srcML, and fully compiles queries using LLVM in order to provide fast query evaluation. This dissertation explores the differences between current state of the art source code query technologies. The srcQL language is compared against the existing source code query language technologies. Each language is compared against a set of queries designed to test capabilities of each language's matching capabilities and limitations. It is shown that using only the underlying syntax and without full compilation it is possible to match or in some cases outperform state of the art query language technologies. Additionally, work on optimizing the srcQL implementation is presented as part of a C++ library called XPathVM. The initial timings using srcQL on a 1 million lines of source code system are presented and show that srcQL is capable of quickly querying large scale systems in sub- second time.
Jonathan Maletic (Advisor)
197 p.

Recommended Citations

Citations

  • Bartman, B. M. (2017). SUPPORTING SOFTWARE EXPLORATION WITH A SYNTACTIC AWARE SOURCE CODE QUERY LANGUAGE [Doctoral dissertation, Kent State University]. OhioLINK Electronic Theses and Dissertations Center. http://rave.ohiolink.edu/etdc/view?acc_num=kent1500967681232291

    APA Style (7th edition)

  • Bartman, Brian. SUPPORTING SOFTWARE EXPLORATION WITH A SYNTACTIC AWARE SOURCE CODE QUERY LANGUAGE. 2017. Kent State University, Doctoral dissertation. OhioLINK Electronic Theses and Dissertations Center, http://rave.ohiolink.edu/etdc/view?acc_num=kent1500967681232291.

    MLA Style (8th edition)

  • Bartman, Brian. "SUPPORTING SOFTWARE EXPLORATION WITH A SYNTACTIC AWARE SOURCE CODE QUERY LANGUAGE." Doctoral dissertation, Kent State University, 2017. http://rave.ohiolink.edu/etdc/view?acc_num=kent1500967681232291

    Chicago Manual of Style (17th edition)