Bounded Symbolic Execution for Runtime Error Detection of Erlang Programs

09/13/2018
by   Emanuele De Angelis, et al.
0

Dynamically typed languages, like Erlang, allow developers to quickly write programs without explicitly providing any type information on expressions or function definitions. However, this feature makes those languages less reliable than statically typed languages, where many runtime errors can be detected at compile time. In this paper, we present a preliminary work on a tool that, by using the well-known techniques of metaprogramming and symbolic execution, can be used to perform bounded verification of Erlang programs. In particular, by using Constraint Logic Programming, we develop an interpreter that, given an Erlang program and a symbolic input for that program, returns answer constraints that represent sets of concrete data for which the Erlang program generates a runtime error.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
08/25/2018

Translating C programs to MSVL programs

C language is one of the most popular languages in system programming an...
research
04/13/2018

Active Learning for Efficient Testing of Student Programs

In this work, we propose an automated method to identify semantic bugs i...
research
12/23/2019

Automated Deductive Verification for Ladder Programming

Ladder Logics is a programming language standardized in IEC 61131-3 and ...
research
03/07/2022

Static Prediction of Runtime Errors by Learning to Execute Programs with External Resource Descriptions

The execution behavior of a program often depends on external resources,...
research
01/12/2021

Symbolic Loop Compilation for Tightly Coupled Processor Arrays

Loop compilation for Tightly Coupled Processor Arrays (TCPAs), a class o...
research
01/24/2023

Bridging Swift Error Handling Model to C++

Error handling is the process of responding to and recovering from error...
research
01/14/2020

Gillian: Compositional Symbolic Execution for All

We present Gillian, a language-independent framework for the development...

Please sign up or login with your details

Forgot password? Click here to reset