Towards modular extensions for a modular language

Morales Caballero, José Francisco; Hermenegildo, Manuel V. y Haemmerlé, R. (2011). Towards modular extensions for a modular language. Monografía (Informe Técnico). Facultad de Informática (UPM) [antigua denominación], Madrid, Spain.


Título: Towards modular extensions for a modular language
  • Morales Caballero, José Francisco
  • Hermenegildo, Manuel V.
  • Haemmerlé, R.
Tipo de Documento: Monográfico (Informes, Documentos de trabajo, etc.) (Informe Técnico)
Título del Libro: Technical Reports and Manuals del Instituto IMDEA Software
Fecha: Enero 2011
Palabras Clave Informales: Compilation, Modules, Modular program processing, Separate compilation, Prolog, Ciao, Complilación, Módulos, Procesamiento de programas modulares, Compilación separada.
Escuela: Facultad de Informática (UPM) [antigua denominación]
Departamento: Inteligencia Artificial
Licencias Creative Commons: Reconocimiento - Sin obra derivada - No comercial

Texto completo

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


Modularity allows the construction of complex designs from simpler, independent units that most of the time can be developed separately. In this paper we are concerned with developing mechanisms for easily implementing modular extensions to modular (logic) languages. By (language) extensions we refer to different groups of syntactic definitions and translation rules that extend a language. Our application of the concept of modularity in this context is twofold. We would like these extensions to be modular, in the above sense, i.e., we should be able to develop different extensions mostly separately. At the same time, the sources and targets for the extensions are modular languages, i.e., such extensions may take as input separate pieces of code and also produce separate pieces of code. Dealing with this double requirement involves interesting challenges to ensure that modularity is not broken: first, combinations of extensions (as if they were a single extension) must be given a precise meaning. Also, the separate translation of multiple sources (as if they were a single source) must be feasible. We present a detailed description of a code expansion-based framework that proposes novel solutions for these problems. We argue that the approach, while implemented for Ciao, can be adapted for other languages and Prolog-based systems.

Más información

ID de Registro: 14686
Identificador DC:
Identificador OAI:
URL Oficial:
Depositado por: Biblioteca Facultad de Informatica
Depositado el: 23 Mar 2013 08:09
Ultima Modificación: 21 Abr 2016 14:27
  • 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