Full text
Preview |
PDF
- Requires a PDF viewer, such as GSview, Xpdf or Adobe Acrobat Reader
Download (1MB) | Preview |
Morales Caballero, José Francisco, Carro Liñares, Manuel ORCID: https://orcid.org/0000-0001-5199-3135 and Hermenegildo, Manuel V.
ORCID: https://orcid.org/0000-0002-7583-323X
(2003).
Improving the compilation of prolog to C using type and determinism information: Preliminary results.
In: "3rd Colloquium on Implementation of Constraint and LOgic Programming Systems (CICLOPS 2003)", December 2003, Mumbai, India.
Title: | Improving the compilation of prolog to C using type and determinism information: Preliminary results |
---|---|
Author/s: |
|
Item Type: | Presentation at Congress or Conference (Article) |
Event Title: | 3rd Colloquium on Implementation of Constraint and LOgic Programming Systems (CICLOPS 2003) |
Event Dates: | December 2003 |
Event Location: | Mumbai, India |
Title of Book: | Colloquium on Implementation of Constraint and logic programming systems |
Date: | December 2003 |
Subjects: | |
Faculty: | Facultad de Informática (UPM) |
Department: | Inteligencia Artificial |
Creative Commons Licenses: | Recognition - No derivative works - Non commercial |
Preview |
PDF
- Requires a PDF viewer, such as GSview, Xpdf or Adobe Acrobat Reader
Download (1MB) | Preview |
We describe the current status of and provide preliminary performance results for a compiler of Prolog to C. The compiler is novel in that it is designed to accept different kinds of high-level information (typically obtained via an analysis of the initial Prolog program and expressed in a standardized language of assertions) and use this information to optimize the resulting C code, which is then further processed by an off-the-shelf C compiler. The basic translation process used essentially mimics an unfolding of a C-coded bytecode emúlator with respect to the particular bytecode corresponding to the Prolog program. Optimizations are then applied to this unfolded program. This is facilitated by a more flexible design of the bytecode instructions and their lower-level components. This approach allows reusing a sizable amount of the machinery of the bytecode emulator: ancillary pieces of C code, data definitions, memory management routines and áreas, etc., as well as mixing bytecode emulated code with natively compiled code in a relatively straightforward way We report on the performance of programs compiled by the current versión of the system, both with and without analysis information.
Item ID: | 14614 |
---|---|
DC Identifier: | https://oa.upm.es/14614/ |
OAI Identifier: | oai:oa.upm.es:14614 |
Deposited by: | Biblioteca Facultad de Informatica |
Deposited on: | 12 Mar 2013 08:23 |
Last Modified: | 21 Apr 2016 14:21 |