We gratefully acknowledge support from
the Simons Foundation and member institutions.
Full-text links:

Download:

Current browse context:

cs.PL

Change to browse by:

References & Citations

DBLP - CS Bibliography

Bookmark

(what is this?)
CiteULike logo BibSonomy logo Mendeley logo del.icio.us logo Digg logo Reddit logo

Computer Science > Programming Languages

Title: Inferring Non-Failure Conditions for Declarative Programs

Authors: Michael Hanus
Abstract: Unintended failures during a computation are painful but frequent during software development. Failures due to external reasons (e.g., missing files, no permissions) can be caught by exception handlers. Programming failures, such as calling a partially defined operation with unintended arguments, are often not caught due to the assumption that the software is correct. This paper presents an approach to verify such assumptions. For this purpose, non-failure conditions for operations are inferred and then checked in all uses of partially defined operations. In the positive case, the absence of such failures is ensured. In the negative case, the programmer could adapt the program to handle possibly failing situations and check the program again. Our method is fully automatic and can be applied to larger declarative programs. The results of an implementation for functional logic Curry programs are presented.
Comments: Extended version of a paper presented at the 17th International Symposium on Functional and Logic Programming (FLOPS 2024)
Subjects: Programming Languages (cs.PL); Software Engineering (cs.SE)
Cite as: arXiv:2402.12960 [cs.PL]
  (or arXiv:2402.12960v1 [cs.PL] for this version)

Submission history

From: Michael Hanus [view email]
[v1] Tue, 20 Feb 2024 12:25:36 GMT (39kb)

Link back to: arXiv, form interface, contact.