Annotating answer-set programs in LanaShow others and affiliations
2012 (English)In: Theory and Practice of Logic Programming, ISSN 1471-0684, E-ISSN 1475-3081, Vol. 12, no 4-5, p. 619-637Article in journal (Refereed) Published
Abstract [en]
While past research in answer-set programming (ASP) mainly focused on theory, ASP solver technology, and applications, the present work situates itself in the context of a quite recent research trend: development support for ASP. In particular, we propose to augment answer-set programs with additional meta-information formulated in a dedicated annotation language, called Lana. This language allows the grouping of rules into coherent blocks and to specify language signatures, types, pre- and postconditions, as well as unit tests for such blocks. While these annotations are invisible to an ASP solver, as they take the form of program comments, they can be interpreted by tools for documentation, testing, and verification purposes, as well as to eliminate sources of common programming errors by realising syntax checking or code completion features. To demonstrate its versatility, we introduce two such tools, viz. (i) ASPDoc, for generating an HTML documentation for a program based on the annotated information, and (ii) ASPUnit, for running and monitoring unit tests on program blocks. Lana is also exploited in the SeaLion system, an integrated development environment for ASP based on Eclipse.
Place, publisher, year, edition, pages
Cambridge University Press, 2012. Vol. 12, no 4-5, p. 619-637
Keywords [en]
answer-set programming, documentation, program annotations, unit testing, Annotation languages, Coherent blocks, Development support, Integrated development environment, Meta information, Program annotation, Program block, Programming errors, Research trends, Unit tests, Logic programming, Software testing, System program documentation, Web services, Program documentation
National Category
Computer Sciences
Identifiers
URN: urn:nbn:se:hj:diva-63572DOI: 10.1017/S147106841200021XISI: 000308365000012Scopus ID: 2-s2.0-84871980854OAI: oai:DiVA.org:hj-63572DiVA, id: diva2:1838386
2024-02-162024-02-162024-02-16Bibliographically approved