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

Casas, Amadeo and Cabeza Gras, Daniel and Hermenegildo, Manuel V. (2006). A syntactic approach to combining functional notation, lazy evaluation, and higher-order in LP systems. In: "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.

Description

Title: A syntactic approach to combining functional notation, lazy evaluation, and higher-order in LP systems
Author/s:
  • Casas, Amadeo
  • Cabeza Gras, Daniel
  • Hermenegildo, Manuel V.
Item Type: Presentation at Congress or Conference (Article)
Event Title: Functional and Logic Programming Functional and Logic Programming 8th International Symposium, FLOPS 2006
Event Dates: April 24-26, 2006
Event Location: Fuji-Susono, Japan
Title of Book: Functional and Logic Programming
Date: 2006
ISBN: 978-3-540-33438-5
Volume: 3945
Subjects:
Freetext Keywords: Declarative languages, Logic, Functional, Logic- functional programming, Lazy evaluation, Higher order, Lenguajes declarativos, Lógica, Evaluación perezosa, Nivel superior
Faculty: Facultad de Informática (UPM)
Department: Inteligencia Artificial
Creative Commons Licenses: Recognition - No derivative works - Non commercial

Full text

[img]
Preview
PDF - Requires a PDF viewer, such as GSview, Xpdf or Adobe Acrobat Reader
Download (947kB) | Preview

Abstract

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.

More information

Item ID: 14350
DC Identifier: http://oa.upm.es/14350/
OAI Identifier: oai:oa.upm.es:14350
Official URL: http://link.springer.com/chapter/10.1007%2F11737414_11
Deposited by: Biblioteca Facultad de Informatica
Deposited on: 24 Jan 2013 07:28
Last Modified: 21 Apr 2016 13:58
  • Logo InvestigaM (UPM)
  • Logo GEOUP4
  • Logo Open Access
  • Open Access
  • Logo Sherpa/Romeo
    Check whether the anglo-saxon journal in which you have published an article allows you to also publish it under open access.
  • Logo Dulcinea
    Check whether the spanish journal in which you have published an article allows you to also publish it under open access.
  • Logo de Recolecta
  • Logo del Observatorio I+D+i UPM
  • Logo de OpenCourseWare UPM