Observatorio de I+D+i UPM

Memorias de investigación
Research Publications in journals:
Lightweight compilation of (C)LP to JavaScript
Year:2012
Research Areas
  • Engineering
Information
Abstract
We present and evaluate a compiler from Prolog (and extensions) to JavaScript which makes it possible to use (constraint) logic programming to develop the client side of web applications while being compliant with current industry standards. Targeting JavaScript makes (C)LP programs executable in virtually every modern computing device with no additional software requirements from the point of view of the user. In turn, the use of a very high-level language facilitates the development of high-quality, complex software. The compiler is a back end of the Ciao system and supports most of its features, including its module system and its rich language extension mechanism based on packages . We present an overview of the compilation process and a detailed description of the run-time system, including the support for modular compilation into separate JavaScript code. We demonstrate the maturity of the compiler by testing it with complex code such as a CLP(FD) library written in Prolog with attributed variables. Finally, we validate our proposal by measuring the performance of some LP and CLP(FD) benchmarks running on top of major JavaScript engines
International
Si
JCR
Si
Title
Theory And Practice of Logic Programming
ISBN
1471-0684
Impact factor JCR
0,667
Impact info
Volume
12
10.1017/S1471068412000336
Journal number
415
From page
755
To page
773
Month
SIN MES
Ranking
Participants
  • Autor: José Francisco Morales Caballero (UPM)
  • Autor: Remy Haemmerle (UPM)
  • Autor: Manuel Carro Liñares (UPM)
  • Autor: Manuel de Hermenegildo Salinas (UPM)
Research Group, Departaments and Institutes related
  • Creador: Grupo de Investigación: Computación lógica, Lenguajes, Implementación y Paralelismo (CLIP)
  • Departamento: Inteligencia Artificial
S2i 2019 Observatorio de investigación @ UPM con la colaboración del Consejo Social UPM
Cofinanciación del MINECO en el marco del Programa INNCIDE 2011 (OTR-2011-0236)
Cofinanciación del MINECO en el marco del Programa INNPACTO (IPT-020000-2010-22)