The ciao modular, standalone compiler and its generic program processing library

Cabeza Gras, Daniel y Hermenegildo, Manuel V. (2000). The ciao modular, standalone compiler and its generic program processing library. En: "Parallelism and Implementation Technology for (Constraint) Logic Programming (in connection with ICLP'99, International Conference on Logic Programming)", December 1st, 1999, Las Cruces, New Mexico, USA.

Descripción

Título: The ciao modular, standalone compiler and its generic program processing library
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: December 1st, 1999
Lugar del Evento: Las Cruces, New Mexico, USA
Título del Libro: Electronic Notes in Theoretical Computer Science
Fecha: Marzo 2000
Materias:
Palabras Clave Informales: Separate compilation, Program processing, Executable construction, Modularity, Prolog, Ciao-prolog, Recopilación por separado, Procesamiento de programas, Construcción 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: 14625
Identificador DC: http://oa.upm.es/14625/
Identificador OAI: oai:oa.upm.es:14625
URL Oficial: http://www.sciencedirect.com/science/article/pii/S1571066105801033
Depositado por: Biblioteca Facultad de Informatica
Depositado el: 13 Mar 2013 08:40
Ultima Modificación: 21 Abr 2016 14:22
  • 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