The ciao module system: A new module system for prolog

Cabeza Gras, Daniel y Hermenegildo, Manuel V. (2000). The ciao module system: A new module system for prolog. En: "Parallelism and Implementation Technology for (Constraint) Logic Programming (in connection with ICLP'99, International Conference on Logic Programming)", 1999.

Descripción

Título: The ciao module system: A new module system for prolog
Autor/es:
  • Cabeza Gras, Daniel
  • Hermenegildo, Manuel V.
Tipo de Documento: Ponencia en Congreso o Jornada (Artículo)
Título del Evento: Parallelism and Implementation Technology for (Constraint) Logic Programming (in connection with ICLP'99, International Conference on Logic Programming)
Fechas del Evento: 1999
Título del Libro: Electronic Notes in Theoretical Computer Science
Fecha: Marzo 2000
Volumen: 30
Materias:
Palabras Clave Informales: Sepárate compilation, Program processing, Executable construction, Modularity, Prolog, Ciao-prolog, Recopilación por separado, El proceso de programas, Construccion de ejecutables, Modularidad.
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 (1MB) | Vista Previa

Resumen

Ciao Prolog incorporates a module system which allows sepárate compilation and sensible creation of standalone executables. We describe some of the main aspects of the Ciao modular compiler, ciaoc, which takes advantage of the characteristics of the Ciao Prolog module system to automatically perform sepárate and incremental compilation and efficiently build small, standalone executables with competitive run-time performance, ciaoc can also detect statically a larger number of programming errors. We also present a generic code processing library for handling modular programs, which provides an important part of the functionality of ciaoc. This library allows the development of program analysis and transformation tools in a way that is to some extent orthogonal to the details of module system design, and has been used in the implementation of ciaoc and other Ciao system tools. We also describe the different types of executables which can be generated by the Ciao compiler, which offer different tradeoffs between executable size, startup time, and portability, depending, among other factors, on the linking regime used (static, dynamic, lazy, etc.). Finally, we provide experimental data which illustrate these tradeoffs.

Más información

ID de Registro: 14624
Identificador DC: http://oa.upm.es/14624/
Identificador OAI: oai:oa.upm.es:14624
URL Oficial: http://www.sciencedirect.com/science/article/pii/S1571066105801136
Depositado por: Biblioteca Facultad de Informatica
Depositado el: 13 Mar 2013 08:29
Ultima Modificación: 21 Abr 2016 14:22
  • GEO_UP4
  • 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
  • InvestigaM
  • Observatorio I+D+i UPM
  • OpenCourseWare UPM