A syntactic approach to combining functional notation, lazy evaluation, and higher-order in LP systems

Casas, Amadeo, Cabeza Gras, Daniel and Hermenegildo, Manuel V. ORCID: https://orcid.org/0000-0002-7583-323X (2006). A syntactic approach to combining functional notation, lazy evaluation, and higher-order in LP systems. En: "Functional and Logic Programming Functional and Logic Programming 8th International Symposium, FLOPS 2006", April 24-26, 2006, Fuji-Susono, Japan. ISBN 978-3-540-33438-5.

Descripción

Título: A syntactic approach to combining functional notation, lazy evaluation, and higher-order in LP systems
Autor/es:
Tipo de Documento: Ponencia en Congreso o Jornada (Artículo)
Título del Evento: Functional and Logic Programming Functional and Logic Programming 8th International Symposium, FLOPS 2006
Fechas del Evento: April 24-26, 2006
Lugar del Evento: Fuji-Susono, Japan
Título del Libro: Functional and Logic Programming
Fecha: 2006
ISBN: 978-3-540-33438-5
Volumen: 3945
Materias:
ODS:
Palabras Clave Informales: Declarative languages, Logic, Functional, Logic- functional programming, Lazy evaluation, Higher order, Lenguajes declarativos, Lógica, Evaluación perezosa, Nivel superior
Escuela: Facultad de Informática (UPM) [antigua denominación]
Departamento: Inteligencia Artificial
Licencias Creative Commons: Reconocimiento - Sin obra derivada - No comercial

Texto completo

[thumbnail of HERME_ARC_2006-7.pdf]
Vista Previa
PDF (Portable Document Format) - Se necesita un visor de ficheros PDF, como GSview, Xpdf o Adobe Acrobat Reader
Descargar (947kB) | Vista Previa

Resumen

Nondeterminism and partially instantiated data structures give logic programming expressive power beyond that of functional programming. However, functional programming often provides convenient syntactic features, such as having a designated implicit output argument, which allow function cali nesting and sometimes results in more compact code. Functional programming also sometimes allows a more direct encoding of lazy evaluation, with its ability to deal with infinite data structures. We present a syntactic functional extensión, used in the Ciao system, which can be implemented in ISO-standard Prolog systems and covers function application, predefined evaluable functors, functional definitions, quoting, and lazy evaluation. The extensión is also composable with higher-order features and can be combined with other extensions to ISO-Prolog such as constraints. We also highlight the features of the Ciao system which help implementation and present some data on the overhead of using lazy evaluation with respect to eager evaluation.

Más información

ID de Registro: 14350
Identificador DC: https://oa.upm.es/14350/
Identificador OAI: oai:oa.upm.es:14350
URL Oficial: http://link.springer.com/chapter/10.1007%2F1173741...
Depositado por: Biblioteca Facultad de Informatica
Depositado el: 24 Ene 2013 07:28
Ultima Modificación: 27 Feb 2023 12:36