<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<item>
  <id>05930822</id>
  <dt>a</dt>
  <an>05930822</an>
  <augroup>
    <au>Swift, Terrance</au>
  </augroup>
  <ti>Design patterns for tabled logic programming.</ti>
  <so>Abreu, Salvador (ed.) et al., Applications of declarative programming and knowledge management. 18th international conference, INAP 2009, \'Evora, Portugal, November 3--5, 2009. Revised selected papers. Berlin: Springer (ISBN 978-3-642-20588-0/pbk). Lecture Notes in Computer Science 6547. Lecture Notes in Artificial Intelligence, 1-19 (2011).</so>
  <py>2011</py>
  <pu>Berlin: Springer</pu>
  <lagroup>
    <la>EN</la>
  </lagroup>
  <ccgroup>
  </ccgroup>
  <utgroup>
  </utgroup>
  <cigroup>
  </cigroup>
  <ligroup>
    <li>doi:10.1007/978-3-642-20589-7_1</li>
  </ligroup>
  <abgroup>
    <ab>Summary: The use of design patterns is common in many areas of software engineering and programming. While they are informal, patterns provide a repository of solutions to common problems, as well as a survey of the features of a given language or software system. This paper uses design patterns to survey features and applications of Tabled Logic Programming (TLP). Patterns for commonly available features are presented, such as those of various recursion types that arise when tabling is used with definite programs, of automatic tabling and of tabling with DCGs. In addition, various patterns capture well-developed uses of tabled negation for non-monotonic reasoning. A final set of patterns describes the approaches of answer subsumption and tabled constraints, features that have fewer applications to date due to the fact that robust implementations of them have only recently become available.</ab>
    <rv></rv>
  </abgroup>
</item>