Annotating answer-set programs in lana*

  • Authors:
  • Marina De vos;Doğa Gizem Kisa;Johannes Oetsch;Jörg Pührer;Hans Tompits

  • Affiliations:
  • Department of computing, university of bath, ba2 7ay, bath, uk (e-mail: mdv@cs.bath.ac.uk);Faculty of engineering and natural sciences, sabanci university, orhanli, tuzla, istanbul 34956, turkey (e-mail: dgkisa@su.sabanciuniv.edu);Institut für informationssysteme 184/3, technische universität wien, favoritenstraβe 9-11, a-1040 vienna, austria (e-mail: oetsch@kr.tuwien.ac.at, puehrer@kr.tuwien.ac.at, tompits@k ...;Institut für informationssysteme 184/3, technische universität wien, favoritenstraβe 9-11, a-1040 vienna, austria (e-mail: oetsch@kr.tuwien.ac.at, puehrer@kr.tuwien.ac.at, tompits@k ...;Institut für informationssysteme 184/3, technische universität wien, favoritenstraβe 9-11, a-1040 vienna, austria (e-mail: oetsch@kr.tuwien.ac.at, puehrer@kr.tuwien.ac.at, tompits@k ...

  • Venue:
  • Theory and Practice of Logic Programming
  • Year:
  • 2012

Quantified Score

Hi-index 0.00

Visualization

Abstract

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.