Debugging Functional Programs
Proceedings of the Sixteenth International Joint Conference on Artificial Intelligence. Qualitative Reasoning and Diagnosis. Pages 1074-1078.
Abstract
In this paper, we use a logic-based system description for a simple (non-logic) functional language to examine the ways in which a diagnosis system can use its system description to improve debugging performance. The key concept is that the notion of expression replacement, which is the basis for repairing a program, can also serve as a fundamental heuristic for searching the source of an error. We formally define replacements in terms of fault modes, explicitly define a replacement order, and use the replacement heuristic for finding diagnoses. Finally, we incorporate the use of multiple test cases and discuss their use in discriminating between diagnoses.
@inproceedings{ijcai1999p153,
title = {Debugging Functional Programs},
author = {Stumptner, Markus and Wotawa, Franz},
booktitle = {Proceedings of the Sixteenth International Joint Conference on
Artificial Intelligence, {IJCAI-99}},
publisher = {International Joint Conferences on Artificial Intelligence},
editor = {Thomas Dean},
pages = {1074--1078},
year = {1999},
note = {Qualitative Reasoning and Diagnosis},
url = {https://ijcai.org/proceedings/1999/153},
}
TY - CPAPER TI - Debugging Functional Programs AU - Stumptner, Markus AU - Wotawa, Franz T2 - Proceedings of the Sixteenth International Joint Conference on Artificial Intelligence, IJCAI-99 PB - International Joint Conferences on Artificial Intelligence PY - 1999 SP - 1074 EP - 1078 UR - https://ijcai.org/proceedings/1999/153 ER -Copied
Machine-readable versions of this paper, for tools and AI agents: