2 research outputs found

    An Approach to Assertion-based Debugging of Higher-Order (C)LP Programs

    Full text link
    Higher-order constructs extend the expressiveness of first-order (Constraint) Logic Programming ((C)LP) both syntactically and semantically. At the same time assertions have been in use for some time in (C)LP systems helping programmers detect errors and validate programs. However, these assertion-based extensions to (C)LP have not been integrated well with higher-order to date. This paper contributes to filling this gap by extending the assertion-based approach to error detection and program validation to the higher-order context within (C)LP. We propose an extension of properties and assertions as used in (C)LP in order to be able to fully describe arguments that are predicates. The extension makes the full power of the assertion language available when describing higher-order arguments. We provide syntax and semantics for (higher-order) properties and assertions, as well as for programs which contain such assertions, including the notions of error and partial correctness and provide some formal results. We also discuss several alternatives for performing run-time checking of such programs.Comment: 24 pages, 1 figure. A 2-page extended abstract to be published as a technical communication in the on-line addendum of the special issue(s) of the TPLP journal for ICLP1

    Towards Assertion-based Debugging of Higher-Order (C)LP Programs

    Full text link
    Higher-order constructs extend the expressiveness of first-order (Constraint) Logic Programming ((C)LP) both syntactically and semantically. At the same time assertions have been in use for some time in (C)LP systems helping programmers detect errors and validate programs. However, these assertion-based extensions to (C)LP have not been integrated well with higher order to date. Our work contributes to filling this gap by extending the assertion-based approach to error detection and program validation to the higher-order context, within (C)LP. It is based on an extension of properties and assertions as used in (C)LP in order to be able to fully describe arguments that are predicates.Comment: 2 pages, to be published as a technical communication in the on-line addendum of the special issue(s) of the TPLP journal for ICLP14. To appear in Theory and Practice of Logic Programming (TPLP). arXiv admin note: substantial text overlap with arXiv:1404.4246; corrected the header publication info and submission, revision and acceptance date
    corecore