Towards structured state threading in prolog

Ivanovic, Dragan; Morales Caballero, José Francisco; Carro Liñares, Manuel y Hermenegildo, Manuel V. (2009). Towards structured state threading in prolog. En: "9 th International Colloquium on Implementation of Constraint and LOgic Programming Systems", 14 th July, 2009, Pasadena, CA, USA.

Descripción

Título: Towards structured state threading in prolog
Autor/es:
  • Ivanovic, Dragan
  • Morales Caballero, José Francisco
  • Carro Liñares, Manuel
  • Hermenegildo, Manuel V.
Tipo de Documento: Ponencia en Congreso o Jornada (Artículo)
Título del Evento: 9 th International Colloquium on Implementation of Constraint and LOgic Programming Systems
Fechas del Evento: 14 th July, 2009
Lugar del Evento: Pasadena, CA, USA
Título del Libro: Proceedings of CICLOPS 2009
Fecha: Julio 2009
Materias:
Palabras Clave Informales: Stateful computation, State abstraction, Contexts, Prolog extensions, Contexto, Extensiones de Prolog.
Escuela: Facultad de Informática (UPM) [antigua denominación]
Departamento: Inteligencia Artificial
Licencias Creative Commons: Reconocimiento - Sin obra derivada - No comercial

Texto completo

[img]
Vista Previa
PDF (Document Portable Format) - Se necesita un visor de ficheros PDF, como GSview, Xpdf o Adobe Acrobat Reader
Descargar (818kB) | Vista Previa

Resumen

It is very often the case that programs require passing, maintaining, and updating some notion of state. Prolog programs often implement such stateful computations by carrying this state in predicate arguments (or, alternatively, in the internal datábase). This often causes code obfuscation, complicates code reuse, introduces dependencies on the data model, and is prone to incorrect propagation of the state information among predicate calis. To partly solve these problems, we introduce contexts as a consistent mechanism for specifying implicit arguments and its threading in clause goals. We propose a notation and an interpretation for contexts, ranging from single goals to complete programs, give an intuitive semantics, and describe a translation into standard Prolog. We also discuss a particular light-weight implementation in Ciao Prolog, and we show the usefulness of our proposals on a series of examples and applications, including code directiy using contexts, DCGs, extended DCGs, logical loops and other custom control structures.

Más información

ID de Registro: 14591
Identificador DC: http://oa.upm.es/14591/
Identificador OAI: oai:oa.upm.es:14591
URL Oficial: http://www.cse.unt.edu/~tarau/ciclops09
Depositado por: Biblioteca Facultad de Informatica
Depositado el: 06 Mar 2013 07:32
Ultima Modificación: 21 Abr 2016 14:19
  • Open Access
  • Open Access
  • Sherpa-Romeo
    Compruebe si la revista anglosajona en la que ha publicado un artículo permite también su publicación en abierto.
  • Dulcinea
    Compruebe si la revista española en la que ha publicado un artículo permite también su publicación en abierto.
  • Recolecta
  • e-ciencia
  • Observatorio I+D+i UPM
  • OpenCourseWare UPM