Observatorio de I+D+i UPM

Memorias de investigación
Ponencias en congresos:
Exploiting Term Hiding to Reduce Run-time Checking Overhead
Áreas de investigación
  • Ciencias de la computación y tecnología informática
One of the most attractive features of untyped languages is the flexibility in term creation and manipulation. However, with such power comes the responsibility of ensuring the correctness of these operations. A solution is adding run-time checks to the program via assertions, but this can introduce overheads that are in many cases impractical. While static analysis can greatly reduce such overheads, the gains depend strongly on the quality of the information inferred. Reusable libraries, i.e., library modules that are pre-compiled independently of the client, pose special challenges in this context. We propose a technique which takes advantage of module systems which can hide a selected set of functor symbols to significantly enrich the shape information that can be inferred for reusable libraries, as well as an improved run-time checking approach that leverages the proposed mechanisms to achieve large reductions in overhead, closer to those of static languages, even in the reusable-library context. While the approach is general and system- independent, we present it for concreteness in the context of the Ciao assertion language and combined static/dynamic checking framework. Our method maintains the full expressiveness of the assertion language in this context. In contrast to other approaches it does not introduce the need to switch the language to a (static) type system, which is known to change the semantics in languages like Prolog. We also study the app- roach experimentally and evaluate the overhead reduction achieved in the run-time checks.
Nombre congreso
20th International Symposium on Practical Aspects of Declarative Languages (PADL 2018)
Tipo de participación
Lugar del congreso
Los Angeles, CA, USA
Fecha inicio congreso
Fecha fin congreso
Desde la página
Hasta la página
Título de las actas
Exploiting Term Hiding to Reduce Run-time Checking Overhead
Esta actividad pertenece a memorias de investigación
  • Autor: Nataliia Stulova . (UPM)
  • Autor: Jose Francisco Morales Caballero (UPM)
  • Autor: Manuel de Hermenegildo Salinas (UPM)
Grupos de investigación, Departamentos, Centros e Institutos de I+D+i relacionados
  • Creador: Grupo de Investigación: Computación lógica, Lenguajes, Implementación y Paralelismo (CLIP)
  • Departamento: Inteligencia Artificial
S2i 2023 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)