Functional notation and lazy evaluation in Ciao


Autoria(s): Casas, Amadeo; Cabeza Gras, Daniel; Hermenegildo, Manuel V.
Data(s)

2005

Resumo

Certain aspects of functional programming provide syntactic convenience, such as having a designated implicit output argument, which allows 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 of Prolog covering function application, predefined evaluable functors, functional definitions, quoting, and lazy evaluation. The extensión is also composable with higher-order features. We also highlight the Ciao features which help implementation and present some data on the overhead of using lazy evaluation with respect to eager evaluation.

Formato

application/pdf

Identificador

http://oa.upm.es/14610/

Idioma(s)

eng

Publicador

Facultad de Informática (UPM)

Relação

http://oa.upm.es/14610/1/HERME_REFWORKS_2005-2.pdf

Direitos

http://creativecommons.org/licenses/by-nc-nd/3.0/es/

info:eu-repo/semantics/openAccess

Fonte

Proceedings of CICLOPS 2005: Colloquium on Implementation of Constraint and Logic Programming Systems | CICLOPS 2005: Colloquium on Implementation of Constraint and Logic Programming Systems | October 2-5, 2005 | Sitges, Spain

Palavras-Chave #Informática
Tipo

info:eu-repo/semantics/conferenceObject

Ponencia en Congreso o Jornada

PeerReviewed