The yap prolog system

  • Authors:
  • Vítor Santos Costa;Ricardo Rocha;Luís Damas

  • Affiliations:
  • Dcc & cracs inesc-porto la, faculty of sciences, university of porto, r. do campo alegre 1021/1055, 4169-007 porto, portugal (e-mail: vsc@dcc.fc.up.pt, ricroc@dcc.fc.up.pt);Dcc & cracs inesc-porto la, faculty of sciences, university of porto, r. do campo alegre 1021/1055, 4169-007 porto, portugal (e-mail: vsc@dcc.fc.up.pt, ricroc@dcc.fc.up.pt);Liacc, faculty of sciences, university of porto, r. do campo alegre 1021/1055, 4169-007 porto, portugal (e-mail: luis@ncc.up.pt)

  • Venue:
  • Theory and Practice of Logic Programming - Prolog Systems
  • Year:
  • 2012

Quantified Score

Hi-index 0.00

Visualization

Abstract

Yet Another Prolog (YAP) is a Prolog system originally developed in the mid-eighties and that has been under almost constant development since then. This paper presents the general structure and design of the YAP system, focusing on three important contributions to the Logic Programming community. First, it describes the main techniques used in YAP to achieve an efficient Prolog engine. Second, most Logic Programming systems have a rather limited indexing algorithm. YAP contributes to this area by providing a dynamic indexing mechanism, or just-in-time indexer. Third, a important contribution of the YAP system has been the integration of both or-parallelism and tabling in a single Logic Programming system.