License: Creative Commons Attribution-NoDerivs 3.0 Unported license (CC BY-ND 3.0)
When quoting this document, please refer to the following
DOI: 10.4230/LIPIcs.ICLP.2012.130
URN: urn:nbn:de:0030-drops-36167
URL: http://dagstuhl.sunsite.rwth-aachen.de/volltexte/2012/3616/
Go to the corresponding LIPIcs Volume Portal


Hanus, Michael

Improving Lazy Non-Deterministic Computations by Demand Analysis

pdf-format:
14.pdf (0.4 MB)


Abstract

Functional logic languages combine lazy (demand-driven) evaluation strategies from functional programming with non-deterministic computations from logic programming. The lazy evaluation of non-deterministic subexpressions results in a demand-driven exploration of the search space: if the value of some subexpression is not required, the complete search space connected to it is not explored. On the other hand, this improvement could cause efficiency problems if unevaluated subexpressions are duplicated and later
evaluated in different parts of a program. In order to improve the execution behavior in such situations, we propose a program analysis that guides a program transformation to avoid such inefficiencies.
We demonstrate the positive effects of this program transformation
with KiCS2, a recent highly efficient implementation of the functional logic programming language Curry.

BibTeX - Entry

@InProceedings{hanus:LIPIcs:2012:3616,
  author =	{Michael Hanus},
  title =	{{Improving Lazy Non-Deterministic Computations by Demand Analysis}},
  booktitle =	{Technical Communications of the 28th International Conference on Logic Programming (ICLP'12)},
  pages =	{130--143},
  series =	{Leibniz International Proceedings in Informatics (LIPIcs)},
  ISBN =	{978-3-939897-43-9},
  ISSN =	{1868-8969},
  year =	{2012},
  volume =	{17},
  editor =	{Agostino Dovier and V{\'i}tor Santos Costa},
  publisher =	{Schloss Dagstuhl--Leibniz-Zentrum fuer Informatik},
  address =	{Dagstuhl, Germany},
  URL =		{http://drops.dagstuhl.de/opus/volltexte/2012/3616},
  URN =		{urn:nbn:de:0030-drops-36167},
  doi =		{10.4230/LIPIcs.ICLP.2012.130},
  annote =	{Keywords: functional logic programming, implementation, program analysis}
}

Keywords: functional logic programming, implementation, program analysis
Collection: Technical Communications of the 28th International Conference on Logic Programming (ICLP'12)
Issue Date: 2012
Date of publication: 05.09.2012


DROPS-Home | Fulltext Search | Imprint | Privacy Published by LZI