The n1/0 built-in predicate is unsatisfiable, that means when we evaluate it while backtracking, it always fails. The most recent satisfy goal is nl, and we will try to satisfy it.
Multi-threading support (run multiple prolog engines on the same database), compiled code tracing, a set of specialized instructions and built-in predicates, attributed and global variables, unit testing using PiDoc, support for creating LaTeX documentation are other advantages that this application brings you.įeaturing high compilation speed, SWI-Prolog can be of great use for Prolog programmers. In the body of clause P3, Prolog goes back to the most recently satisfying goal. The program provides support for unicode character sets, which makes it suitable for creating web-based and multilingual applications. The advanced debugging feature set comprises a spy point editor, an exception debugger, a thread monitor and a dependency management tool. The package also includes a collection of libraries that programmers can find useful, namely components for constraint handling rules, interface libraries, HTML, RDF and XML parsers, a web server library for session management, HTML and HTTP authorization endeavors and so on.
It supports many platforms, including MS-DOS, PharLap-Extended DOS, MS Windows 3.1, MS Windows 3.11, MS Windows 95, Windows NT, as well as 16 bit and 32 bit OS/2 target platforms using processors from the 80x86 base. SWI-Prolog bundles a Prolog cross-referencer, an execution profiler to output instruction statistics, as well as an error checking tool. Visual Prolog is designed to make it easy, convenient and fast to develop, test, and modify applications written in PDC Prolog. For example, there are keywords that differentiate the declarations from the definitions of predicates and domains.
The application comes with a flexible and intuitive interface that enables you to work with C / C++ code, providing support for large applications and unlimited integer values without lowering performance.īoth static and dynamic code can be easily indexed on any argument, while the source-level debugger supports graphics through XPCE. A Visual Prolog program consists of Prolog code which is punctuated into different sections by appropriate keywords that inform the compiler the code it has to generate. Then the predicate sum is defined that takes integer list and a Integer as arguments. The first segment ( i.e the Domains section ) defines or declares the space dynamically for integer list.
Here in this program, the sum function is made that adds the contents of list. Relying on a Prolog virtual machine to define instructions, SWI-Prolog features a faster compiler and the debugging mode only reduces the system speed by a bit. Visual Prolog Program to add the contents of an integer list. SWI-Prolog provides you with a comprehensive and robust development environment for the Prolog logic programming language, which is intended for computational linguistics and artificial intelligence applications.