File: abstract.doc

package info (click to toggle)
swi-prolog 9.0.4%2Bdfsg-2
  • links: PTS, VCS
  • area: main
  • in suites: bookworm
  • size: 82,408 kB
  • sloc: ansic: 387,503; perl: 359,326; cpp: 6,613; lisp: 6,247; java: 5,540; sh: 3,147; javascript: 2,668; python: 1,900; ruby: 1,594; yacc: 845; makefile: 428; xml: 317; sed: 12; sql: 6
file content (31 lines) | stat: -rw-r--r-- 1,672 bytes parent folder | download | duplicates (3)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
SWI-Prolog is a comprehensive and portable implementation of the Prolog
programming language. SWI-Prolog aims to be a robust and scalable
implementation supporting a wide range of applications. In particular,
it ships with a wide range of interface libraries, providing interfaces
to other languages, databases, graphics and networking. It provides
extensive support for managing HTML/SGML/XML, JSON, YAML and RDF
documents. The system is particularly suited for server applications due
to robust support for multithreading and HTTP server libraries.

SWI-Prolog extends Prolog with \jargon{tabling} (SGL resolution).
Tabling provides better termination properties and avoids repetitive
recomputation. Following XSB, SWI-Prolog's tabling supports sound
negation using the \jargon{Well Founded Semantics}. \jargon{Incremental
tabling} supports usage as a \jargon{Deductive database}.

SWI-Prolog is designed in the `Edinburgh tradition'. In addition to the
ISO Prolog standard it is largely compatible to Quintus, SICStus and YAP
Prolog.  SWI-Prolog provides a compatibility framework developed in
cooperation with YAP and instantiated for YAP, SICStus, IF/Prolog and
XSB.

SWI-Prolog aims at providing a rich development environment, including
extensive editor support, graphical source-level debugger, autoloading,
a `make' facility to reload edited files and much more. GNU-Emacs,
SWI-Prolog editor for Windows, the PDT plugin for Eclipse or a Visual
Studio Code plugin provide alternative environments.
\href{https://swish.swi-prolog.org}{SWISH} provides a web based
environment.

This document gives an overview of the features, system limits and
built-in predicates.