Supporting the debugging of Erlang programs by symbolic execution

Programmers can benefit from static source code analysis techniques in various ways: they can understand their code better, test it more effectively, debug it more efficiently, and so on. However, they often face the challenge of discovering how to reproduce faulty executions that cause runtime er...

Full description

Saved in:
Bibliographic Details
Main Authors: Zsófia Erdei, Melinda Tóth, István Bozó
Format: Article
Language:English
Published: Scientia Publishing House 2024-10-01
Series:Acta Universitatis Sapientiae: Informatica
Subjects:
Online Access:https://acta.sapientia.ro/content/docs/info16-1-04-721457.pdf
Tags: Add Tag
No Tags, Be the first to tag this record!
_version_ 1846151585142407168
author Zsófia Erdei
Melinda Tóth
István Bozó
author_facet Zsófia Erdei
Melinda Tóth
István Bozó
author_sort Zsófia Erdei
collection DOAJ
description Programmers can benefit from static source code analysis techniques in various ways: they can understand their code better, test it more effectively, debug it more efficiently, and so on. However, they often face the challenge of discovering how to reproduce faulty executions that cause runtime errors. The term symbolic execution refers to a static source code analysis method that can help with this challenge. In this paper, we are showing a symbolic execution-based analysis method to find the source of a runtime error. The method uses a control-flow graph to select the execution paths reaching the targeted runtime error. The algorithm is implemented as part of the RefactorErl static program analysis and transformation framework.
format Article
id doaj-art-fef442f913c849e986f1c346efa569f8
institution Kabale University
issn 2066-7760
language English
publishDate 2024-10-01
publisher Scientia Publishing House
record_format Article
series Acta Universitatis Sapientiae: Informatica
spelling doaj-art-fef442f913c849e986f1c346efa569f82024-11-27T09:58:40ZengScientia Publishing HouseActa Universitatis Sapientiae: Informatica2066-77602024-10-01161446110.47745/ausi-2024-0004Supporting the debugging of Erlang programs by symbolic executionZsófia Erdei0https://orcid.org/0000-0002-5089-4984Melinda Tóth1https://orcid.org/0000-0001-6300-7945István Bozó2https://orcid.org/0000-0001-5145-9688Eötvös Loránd University, Budapest, HungaryEötvös Loránd UniversityEötvös Loránd UniversityProgrammers can benefit from static source code analysis techniques in various ways: they can understand their code better, test it more effectively, debug it more efficiently, and so on. However, they often face the challenge of discovering how to reproduce faulty executions that cause runtime errors. The term symbolic execution refers to a static source code analysis method that can help with this challenge. In this paper, we are showing a symbolic execution-based analysis method to find the source of a runtime error. The method uses a control-flow graph to select the execution paths reaching the targeted runtime error. The algorithm is implemented as part of the RefactorErl static program analysis and transformation framework.https://acta.sapientia.ro/content/docs/info16-1-04-721457.pdfstatic analysisfault localizationsymbolic executionerlang
spellingShingle Zsófia Erdei
Melinda Tóth
István Bozó
Supporting the debugging of Erlang programs by symbolic execution
Acta Universitatis Sapientiae: Informatica
static analysis
fault localization
symbolic execution
erlang
title Supporting the debugging of Erlang programs by symbolic execution
title_full Supporting the debugging of Erlang programs by symbolic execution
title_fullStr Supporting the debugging of Erlang programs by symbolic execution
title_full_unstemmed Supporting the debugging of Erlang programs by symbolic execution
title_short Supporting the debugging of Erlang programs by symbolic execution
title_sort supporting the debugging of erlang programs by symbolic execution
topic static analysis
fault localization
symbolic execution
erlang
url https://acta.sapientia.ro/content/docs/info16-1-04-721457.pdf
work_keys_str_mv AT zsofiaerdei supportingthedebuggingoferlangprogramsbysymbolicexecution
AT melindatoth supportingthedebuggingoferlangprogramsbysymbolicexecution
AT istvanbozo supportingthedebuggingoferlangprogramsbysymbolicexecution