Free Prolog Compilers and Interpreters

Compilers / development systems for the Prolog programming language


Free Prolog Compilers and Interpreters

Prolog is a logic programming language, used by many for computational linguistics (where computer programs are used to process human languages) and artificial intelligence. It has also been used in other fields as well, such as games, expert systems, control systems, and so on.

This page lists various free implementations of the Prolog programming language.

Related Pages

Free Prolog Compilers and Implementations

Poplog

Poplog is a software development system that includes incremental compilers for Pop11 (a Lisp-like language with more conventional syntax), Common Lisp (compatible with CLTL2 — Common LISP: The Language, 2nd edition), Prolog (compatible with the Edinburgh definition), and Standard ML. It comes with documentation, program libraries, and teaching materials for AI and Cognitive Science. Source code for the system (as well as example code such as the source code for the famous AI program, Eliza) is included. Supported platforms include Windows, Linux, Solaris on Sparc, Solaris on Intel, Digital Unix on Alpha, AIX on PowerPCs.

Tau Prolog

Tau Prolog is an open source Prolog interpreter completely implemented using JavaScript. The interpreter is inserted into your web page the normal way you would an external JavaScript file, following which you can write Prolog programs within <script type="text/prolog"></script> tags. (Read their documentation for more details, since the previous sentence is an oversimplification; there's more you need to do.) The site states that while most of the elements were implemented according to the ISO Prolog standard, there are differences. The Tau Prolog language itself is documented in their online manual.

ECLiPSe

The ECLiPSe implementation supports the Prolog language (including ISO Prolog) along with a number of extensions. The website states that it is designed for the development of constraint programming applications (such as in planning, scheduling, resource allocation, timetabling, and transport) as well as the teaching of combinatorial problem solving (problem modelling, constraint programming, mathematical programming, and search techniques). It comes with an integrated devlopment environment (IDE), several constraint solver libraries, a high-level modelling and control language, etc. The software is open source, and licensed under the Mozilla Public License. Platforms supported include Windows, Mac OS X and Linux.

B-Prolog

The B-Prolog implementation of Prolog includes several extensions to the standard such as (to quote from their website) "matching clauses, action rules for event handling, finite-domain constraint solving, arrays and hash tables, declarative loops and tabling". This constraint logic programming (or CLP) system is available for Windows, Mac OS X and Linux. According to their "Order" page, it looks like individual, academic and non-commercial site licences ("licenses" in US English) are free.

C#Prolog

C#Prolog is a Prolog interpreter written in C#. It can be integrated into your C# programs. It has a command line interface, built-in DCG, XML-predicates, persistent predicates using Firebird RDBMS (see the Free Databases page), and is extensible. This is a Windows program licensed under the GNU General Public License (GPL). It is distributed in source form.

Open Prolog

Open Prolog supports many features of ISO Prolog, including disjunctive calls, negation, if-then and if-then-else, program originated catch and throw exception handling, the "logical" assert and retract of Lindholm & O'Keefe, automatic memory management and garbage collection (except for the name table), etc. It runs on Apple Macintosh machines running Mac OS 7.5.5 and later, as well as under the Classic environment of Mac OS X. The program is postcardware.

Ciao Prolog

Ciao Prolog supports ISO Prolog as well as various extensions, such as programming with functions, objects, threads, etc. It comes with libraries that support WWW programming, sockets, interfaces to other languages (eg C, Java, TclTk, relational databases), etc. The compiler allows you to generate architecture-independent and standalone executables. The system also includes lpdoc, an automatic document generator. It is released under the GNU LGPL and GPL licences (depending on which software in the package you are talking about). Precompiled binaries are available for Windows, and the sources may be compiled for Linux, Mac OS X, SunOS, Solaris, IRIX, etc.

GNU Prolog

This Prolog compiler complies with the ISO standard for Prolog (with useful extensions like global variables, ability to interface with the operating system, etc) and produces a native binary that can be run standalone. It is smart enough to avoid linking unused built-in predicates. It also has an interactive interpreter and a Prolog debugger as well as a low-level WAM debugger. You can interface with C code (both ways). Platforms supported include Linux (i86), SunOS (sparc) and Solaris (sparc).

LPA Prolog Professional

This is a 16 bit MSDOS implementation of Prolog that is no longer being maintained or supported. It is a traditional Edinburgh system, where you are placed in a traditional Prolog console to enter queries, etc. The program is for non-commercial use only, and does not come with any documentation. (You probably should try other free implementations with better documentation and support.)

Strawberry Prolog Light Edition

The freeware version of this compiler requires you to distribute the sources of your code since it does not allow you to save the compiled executable to disk. The compiler currently runs on Windows 95/NT, and a version for Unix and Macintosh is supposed to be in the works.

SWI-Prolog

A Prolog compiler that may be used freely in a research and educational environment. It supports Edinburgh Prolog, and large parts of ISO, Quintus and SICStus Prolog. You can interface your Prolog code with C/C++ code (both ways). Both sources and binaries (Win32, almost all Unix platforms, etc) are provided.

Visual Prolog Personal Edition

The Personal Edition of this compiler is available for Windows systems. The licence only allows you to use it for non-commercial purposes. It also creates a banner in your executables. Licence aside, you get a GUI IDE which allows you to design and draw your user interfaces instead of coding them. Also included are support for multiple threads, regular expressions, handle templates, collections, and mutable variables.

Kernel Prolog

Kernel Prolog is a Java based Prolog interpreter with built-ins based on Fluents, a Prolog extension providing reflection and smooth interoperation with external objects. It is released under the GNU GPL, so source code is available. It also means that your programs that embed the interpreter will need to be released under GPL too.

tuProlog

tuProlog is a Java-based Prolog meant for Internet applications. Your programs are deployed as a JAR file and can be run on any system with a Java Virtual Machine. It is designed to be lightweight with a minimal core that contains only the most essential properties of a Prolog engine, yet be configurable so that you can load predicates, functors and operators either statically or dynamically. The Prolog engine is released under the GNU LGPL.

Related Pages

Newest Pages

Popular Pages

How to Link to This Page

It will appear on your page as:

Free Prolog Compilers and Interpreters

 


 

thesitewizard.com: Free Webmaster Tutorials, Scripts and Articles

HowtoHaven.com: Free How-To Guides

thefreecountry.com: Free Programmers, Webmasters and Security Resources
If you find this site useful, please link to us.