<?xml version="1.0" encoding="UTF-8"?>
<xml><records><RECORD><source-app name="Bibcite" version="8.x">Drupal-Bibcite</source-app><REFERENCE_TYPE>31</REFERENCE_TYPE><CONTRIBUTORS><AUTHORS><AUTHOR><style face="normal" font="default" size="100%">Jan Christiansen</style></AUTHOR><AUTHOR><style face="normal" font="default" size="100%">Michael Hanus</style></AUTHOR><AUTHOR><style face="normal" font="default" size="100%">Fabian Reck</style></AUTHOR><AUTHOR><style face="normal" font="default" size="100%">Daniel Seidel</style></AUTHOR></AUTHORS></CONTRIBUTORS><TITLES><TITLE><style face="normal" font="default" size="100%">A Semantics for Weakly Encapsulated Search in Functional Logic Programs</style></TITLE></TITLES><KEYWORDS/><DATES/><AUTHORS><style face="normal" font="default" size="100%"/></AUTHORS><YEAR><style face="normal" font="default" size="100%">2013</style></YEAR><SECONDARY_TITLE><style face="normal" font="default" size="100%">Proceedings of the 15th Symposium on Principles and Practice of Declarative Programming - PPDP  13</style></SECONDARY_TITLE><PUBLISHER><style face="normal" font="default" size="100%">ACM Press</style></PUBLISHER><PAGES><style face="normal" font="default" size="100%">49-60</style></PAGES><ISBN><style face="normal" font="default" size="100%">978-1-4503-2154-9</style></ISBN><ABSTRACT><style face="normal" font="default" size="100%">Encapsulated search is a key feature of (functional) logic languages. It allows the programmer to access and process different results of a non-deterministic computation within a program. Unfortunately, due to advanced operational features (lazy evaluation, partial values, infinite structures), there is no straightforward definition of the semantics of encapsulated search in functional logic languages. As a consequence, various proposals and implementations are available but a rigorous definition covering all semantical aspects does not exist. In this paper, we analyze the requirements of encapsulated search in a functional logic language like Curry and provide a comprehensive definition that covers weak encapsulation, a modular form of encapsulation, as well as nested applications of search operators. We set up a denotational semantics that distinguishes non-termination and different levels of failures in a computation. The semantics is also the basis of a practical implementation of search operators in the functional logic language Curry.</style></ABSTRACT><title><style face="normal" font="default" size="100%">A Semantics for Weakly Encapsulated Search in Functional Logic Programs</style></title></RECORD></records></xml>
