Concolic Execution for Testing Definitional Interpreters

Bachelor Thesis (2021)
Author(s)

P. Boon Alexaki (TU Delft - Electrical Engineering, Mathematics and Computer Science)

Contributor(s)

C.B. Bach Poulsen – Mentor (TU Delft - Programming Languages)

C.R. van der Rest – Mentor (TU Delft - Programming Languages)

K.G. Langendoen – Graduation committee member (TU Delft - Embedded Systems)

Faculty
Electrical Engineering, Mathematics and Computer Science
Copyright
© 2021 Philippos Boon Alexaki
More Info
expand_more
Publication Year
2021
Language
English
Copyright
© 2021 Philippos Boon Alexaki
Graduation Date
02-07-2021
Awarding Institution
Delft University of Technology
Project
['CSE3000 Research Project']
Programme
['Computer Science and Engineering']
Faculty
Electrical Engineering, Mathematics and Computer Science
Reuse Rights

Other than for strictly personal use, it is not permitted to download, forward or distribute the text or part of it, without the consent of the author(s) and/or copyright holder(s), unless the work is under an open content license such as Creative Commons.

Abstract

Definitional interpreters are difficult to test with a pre-defined test suite. This paper tries to determine the effectiveness of automatic testing of definitional interpreters, using concolic execution. First we develop a model for concolic execution of a functional language. Then we identify different categories of common mistakes when writing interpreters and test which are caught by concolic execution. We find that while concolic execution is promising, as it can find counterexamples for most errors in a small language, the model developed in this paper is not sufficient to generate counterexamples for more complicated languages.

Files

Paper.pdf
(pdf | 0.103 Mb)
License info not available