A system for automatically generating documentation for (C)LP programs

Hermenegildo, Manuel V. (2000). A system for automatically generating documentation for (C)LP programs. In: "WLPE'99, Tenth Workshop on Logic Programming Environments (in connection with ICLP'99, International Conference on Logic Programming)", 29 November 1999, Las Cruces, New Mexico, USA.

Description

Title: A system for automatically generating documentation for (C)LP programs
Author/s:
  • Hermenegildo, Manuel V.
Item Type: Presentation at Congress or Conference (Article)
Event Title: WLPE'99, Tenth Workshop on Logic Programming Environments (in connection with ICLP'99, International Conference on Logic Programming)
Event Dates: 29 November 1999
Event Location: Las Cruces, New Mexico, USA
Title of Book: Electronic Notes in Theoretical Computer Science
Date: April 2000
Subjects:
Faculty: Facultad de Informática (UPM)
Department: Inteligencia Artificial
Creative Commons Licenses: Recognition - No derivative works - Non commercial

Full text

[img]
Preview
PDF - Requires a PDF viewer, such as GSview, Xpdf or Adobe Acrobat Reader
Download (1MB) | Preview

Abstract

We describe lpdoc, a tool which generates documentation manuals automatically from one or more logic program source files, written in ISO-Prolog, Ciao, and other (C)LP languages. It is particularly useful for documenting library modules, for which it automatically generates a rich description of the module interface. However, it can also be used quite successfully to document full applications. A fundamental advantage of using lpdoc is that it helps maintaining a true correspondence between the program and its documentation, and also identifying precisely to what version of the program a given printed manual corresponds. The quality of the documentation generated can be greatly enhanced by including within the program text assertions (declarations with types, modes, etc.) for the predicates in the program, and machine-readable comments. One of the main novelties of lpdoc is that these assertions and comments are written using the Ciao system assertion language, which is also the language of communication between the compiler and the user and between the components of the compiler. This allows a significant synergy among specification, documentation, optimization, etc. A simple compatibility library allows conventional (C)LP systems to ignore these assertions and comments and treat normally programs documented in this way. The documentation can be generated in many formats including texinfo, dvi, ps, pdf, info, html/css, Unix nroff/man, Windows help, etc., and can include bibliographic citations and images. lpdoc can also generate “man” pages (Unix man page format), nicely formatted plain ascii “readme” files, installation scripts useful when the manuals are included in software distributions, brief descriptions in html/css or info formats suitable for inclusion in on-line indices of manuals, and even complete WWW and info sites containing on-line catalogs of documents and software distributions. The lpdoc manual, all other Ciao system manuals, and parts of this paper are generated by lpdoc.

More information

Item ID: 14626
DC Identifier: http://oa.upm.es/14626/
OAI Identifier: oai:oa.upm.es:14626
Official URL: http://www.sciencedirect.com/science/article/pii/S1571066105806632
Deposited by: Biblioteca Facultad de Informatica
Deposited on: 13 Mar 2013 08:35
Last Modified: 21 Apr 2016 14:22
  • Logo InvestigaM (UPM)
  • Logo GEOUP4
  • Logo Open Access
  • Open Access
  • Logo Sherpa/Romeo
    Check whether the anglo-saxon journal in which you have published an article allows you to also publish it under open access.
  • Logo Dulcinea
    Check whether the spanish journal in which you have published an article allows you to also publish it under open access.
  • Logo de Recolecta
  • Logo del Observatorio I+D+i UPM
  • Logo de OpenCourseWare UPM