[2-1] Free Prolog Implementations
The following list of free Prolog and logic programming implementations
excludes those listed in the comp.lang.lisp and comp.lang.scheme FAQs
(i.e., Prolog interpreters written in Lisp and Scheme).
Most of these Prolog implementations are available from the CMU AI
Repository, in the directory
ftp.cs.cmu.edu:/user/ai/lang/prolog/impl/
A.D.A. Public Domain Prolog:
aisun1.ai.uga.edu:ai.prolog/adapdpro.zip
A rather slow implementation of Prolog for MS-DOS systems, originally
a product of Automata Design Associates (now defunct), 1570
Arran Way, Dresker, PA 19025, 215-335-5400.
Aquarius Prolog:
Aquarius Prolog is a high-performance, portable Prolog implementation
developed since 1989 by the Aquarius Project at UC/Berkeley, the Advanced
Computer Architecture Laboratory (ACAL) at the University of Southern
California (USC), and at Digital Equipment Corporation's Paris Research
Laboratory. The developers are Tom Getzinger, Ralph Clarke Haygood, and
Peter Van Roy. Aquarius Prolog includes:
- A compiler with global analysis. The compiler is built around the
Berkeley Abstract Machine (BAM) execution model for Prolog. BAM
retains desirable features of the Warren Abstract Machine (WAM),
but allows for significant further optimizations and is easier to
map onto actual general-purpose machines.
- A back-end that maps the BAM onto various actual general-purpose
machines, including MIPS R3000 (DEC Ultrix and MIPS RISC/os),
SPARC (SunOS), HP 9000 300/400 with MC68020, MC68030 or MC68040
processors (HP-UX), and Sun3 (SunOS).
- A run-time system offering substantially the same built-in
predicates and memory management as Quintus Prolog, with additions
such as two kinds of destructive assignment. Most of the built-in
predicates are written in Prolog, with little or no performance
penalty.
Aquarius Prolog also includes an interpreter and documentation.
Aquarius Prolog comes in two distributions, Enduser and Full. The
latter includes full source code and implementation notes.
Aquarius Prolog may be obtained free of charge from USC, after signing
and returning a license agreement. To get the license agreement, send a
message to listserv@acal-server.usc.edu with
get aquarius-info license
in the message body. To get more information about the Full and
Enduser distributions, send the listserver a message containing
one or both of the two lines:
get aquarius-info readme-full
get aquarius-info readme-enduser
To subscribe to the aquarius-prolog mailing list, send the listserver a
message with body:
subscribe aquarius-prolog <Your real name here>
To get more information about the abilities of the listserver, send it a
message with 'help' in the body.
For further information, write to University of Southern California,
Advanced Computer Architecture Laboratory (ACAL), Attn: Aquarius Prolog
Licensing, 3740 S. McClintock, Suite 131, Los Angeles, CA 90089-2561, or
send email to aquarius@acal-server.usc.edu.
Beta-Prolog (version 1.2):
Beta-Prolog is a fast and portable Prolog implementation. It consists
of an emulator of the NTOAM (matching Tree Oriented Abstract Machine)
written in C, a compiler written in Prolog that translates Prolog
programs into NTOAM instructions, and a library of built-in
predicates.
Beta-Prolog has the following features:
1. It is one of the fastest emulator-based Prolog implementations.
The NTOAM inherits many good features of the WAM, but differs from
WAM-based systems in that predicate arguments are passed directly
in stack frames and only one frame is used for each predicate. For
many programs written for WAM-based systems, Beta-Prolog is faster
than emulator-based SICStus Prolog 2.1. Further speed-ups can be
achieved if these programs are rewritten into a style suitable for
Beta-Prolog by taking the NTOAM's argument passing scheme into
account.
2. Besides Edinburgh style clauses, Beta-Prolog also accepts
matching clauses in which input and output unifications are
separated, and determinism is denoted explicitly. The compiler is
able to translate predicates in this form into matching trees and
index them using all input arguments. The compiler can compile
quite large programs in a short time because it consists of only
matching clauses.
3. It provides an interactive interface through which the
programmers can consult, compile, load, debug and run programs.
4. It provides an interface through which C functions can be
called from Prolog.
5. It provides a special data structure called state tables that
can be used to represent graphs, simple and complex domains in
constraint satisfaction problems, and situations in various
combinatorial search problems.
6. It includes a finite-domain constraint solver with which
constraint satisfaction problems can be specified declaratively.
Beta-Prolog is available by anonymous ftp from
ftp.kyutech.ac.jp:/pub/Language/prolog/ [131.206.1.101]
or from the CMU AI Repository in
ftp.cs.cmu.edu:/user/ai/lang/prolog/impl/prolog/beta_pl/
The system can be installed without difficulty on any machine that
runs Unix and the cc (or gcc) C compiler. Beta-Prolog was developed by
Neng-Fa Zhou, <zhou@mse.kyutech.ac.jp>, Faculty of Computer Science
and Systems Engineering, Kyushu Institute of Technology, 680-4 Kawazu,
Iizuka, Fukuoka 820, Japan, phone 81-948-29-7774, fax 81-948-29-7760.
For more information, send mail to betaprolog@cad.mse.kyutech.ac.jp.
BinProlog:
clement.info.umoncton.ca:/BinProlog3.0.tar.gz [139.103.16.2]
ftp.elis.rug.ac.be:/pub/BinProlog/ [157.193.67.1]
BinProlog replaces the WAM by a more compact continuation passing logic
engine based on a mapping of full Prolog to binary logic programs. It
includes an interface Tcl/Tk. Version 2.20 runs on Sparc, DEC Alpha,
MIPS (SGI, DEC) 68k (NeXT, Sun3), R6000 (IBM), PA-RISC (HP) and IBM PC
(386/486). The compiler makes 528 KLIPS on a Sparc 10-40 (101 KLIPS on a
NeXT) and still uses a very small (49K under Solaris 2.1) emulator,
making it among the fastest freely available C-emulated Prologs (3-5
times faster than C-Prolog, 2-3 times faster than SWI-Prolog, 1.5-2
times faster than (X)SB-prolog and close to C-emulated Sicstus 2.1.).
Comments and bug reports should be sent to Paul Tarau
<binprolog@info.umoncton.ca>.
BinProlog is free for reasearch and other non-profit purposes. Use in
industrial applications, licensing of C-sources, porting to other
platforms, BinProlog related support and consulting are available but
need a separate agreement. BinProlog's very small code-size and high
performances make it suitable to be integrated in industrial
C-applications that need the services of an embedded logic
programming engine.
Boizumault Prolog:
The various Prolog interpreters described in Patrice Boizumault's
book, "The Implementation of Prolog", are available by anonymous
ftp from
cnam.cnam.fr:/pub/Boizumault/
or from the CMU AI Repository in
ftp.cs.cmu.edu:/user/ai/lang/prolog/impl/prolog/boiz_pl/
The three interpreters, corresponding to appendices A through D of
the book, are written in Common Lisp. Examples which run in all the
interpreters include cryptarithms, Eliza, Sieve of Eratosthenes,
Factorial, N-Queens, and Quicksort. For more information, write to
Patrice Boizumault <boizu@math-appli-uco.fr>.
Common ESP:
CESP (Common Extended Self-contained Prolog) is an object-oriented
system by the AI Language Research Institute, Kamakura, Japan. The
binary is free for R & D use only -- send 1/4in CMT Sun3 and Sun4
(Sparc) with Sun OS R4.0.3, R4.1 or R4.1.1. For more information,
write to AI Language Research Institute Ltd, Yoshitoku Bldg, Shiba
3-15-14, Minato-Ku, Tokyo 105, Japan, fax +81 3 3456 4418, or send
email to k-hata@air.co.jp or matsuura@air.co.jp.
cu-Prolog: See [2-5].
ECLiPSe (ECRC Logic Programming System) combines the functionalities
of several ECRC systems, including SEPIA (an Edinburgh-style
extensible Prolog system based on a WAM compiler), MegaLog (a database
system) and CHIP (a constraint logic programming system). ECLiPSe
includes a Prolog compiler with extended functionality that is Quintus
and SICStus compatible, a tightly connected database system based on
the BANG file system, a CLP system, and an interface to the Tcl/Tk X11
toolkit. The BANG database can store not only relations, but also any
Prolog structures and programs. The CLP system contains several
libraries with various types of constraint handling schemes, including
atomic finite domains, linear rational constraints, CHR (constraint
handling rules) and Propia (generalised propagation). It also
supports writing further extensions like new user-defined constraints
or complete new constraint solvers. ECLiPSe also includes a profiler,
user-definable syntax, metaterms as first-class citizens, coroutining,
a high-level debugger (OPIUM), a partial evaluation system (PADDY),
and unlimited precision integer and rational numbers. ECLiPSe is
available for a nominal fee of DM 300 (~$200) to all academic and
government-sponsored organizations. It is distributed in binary form
for Sun-3 and Sparc machines. Send orders or requests for further
information to eclipse_request@ecrc.de or write to ECRC,
Arabellastrasse 17, 81925 Munich, Germany. The ECLiPSe documentation
(ASCII and dvi) and some shareware packages ported to ECliPSe are now
available by anonymous ftp from
ecrc.de:/pub/eclipse
To subscribe to the eclipse_users@ecrc.de mailing list, send mail to
eclipse_request@ecrc.de. The tech support email address is
eclipse_bugs@ecrc.de.
eLP (Ergo Lambda Prolog) is an interpreter written by Conal Elliott,
Frank Pfenning and Dale Miller in Common Lisp and implements the core
of lambda Prolog (higher-order hereditary Harrop formulas). It is
embedded in a larger development environment called ESS (the Ergo
Support System). eLP implements all core language feature and offers
a module system, I/O, some facilities for tracing, error handling,
arithmetic, recursive top-levels, on-line documentation and a number
of extended examples, including many programs from Amy Felty's and
John Hannan's thesis. It should run in Allegro Common Lisp, Lucid
Common Lisp, Kyoto Common Lisp, CMU Common Lisp and Ibuki Common Lisp.
The eLP implementation of lambda Prolog is no longer developed or
maintained, but it is still available via anonymous ftp from
ftp.cs.cmu.edu:/afs/cs.cmu.edu/project/ergo/export/ess/. The file
ergolisp.tar.Z contains the Ergo project's extensions to Common Lisp,
including some facilities for attributes and dealing with abstract
syntax trees. The file sb.tar.Z contains the Ergo
Parser/Unparser/Formatter generator and ab.tar.Z contains the Ergo
Attribute Grammar facility. The file elp.tar.Z contains the Ergo
implementation of lambda Prolog. To customize grammars you need the
sb.tar.Z file. When you retrieve the system, please print, fill out,
and send in a copy of the non-restrictive license you will find in the
file LICENSE. To subscribe to the elp@cs.cmu.edu mailing list, send
mail to elp-request@cs.cmu.edu. Bugs should be sent to
elp-bugs@cs.cmu.edu.
ESL Prolog-2 (PD Version):
ai.uga.edu:ai.prolog/eslpdpro.zip [128.192.12.9]
A prolog for MS-DOS systems with good performance. It deviates
slightly from Edinburgh standard (strings "like this" are not lists
of ASCII codes), but you can add a declaration that makes it fully
Edinburgh-compatible. (Add the line
:- state(token_class,_,dec10).
at the beginning of the program.) It is a more limited version
of the interpreter from the Commercial Version (see [2-2] below).
[Please note that ESL Prolog is NOT a UGA product, they just run
the machine on which a copy is made available. Anyone with
questions should contact ESL in Oxford, England (see [2-2] below).
The commercial version of ESL Prolog-2 has been sold to ESI.]
Documentation is available as a 2-volume set published by Ablex
(type "prolog2" for info). ESL Prolog is also discussed
extensively in Tony Dodd's book "Prolog: A Logical Approach,"
Oxford University Press.
GOEDEL is intended to be a declarative successor to Prolog. The main
design aim of Goedel is to have functionality and expressiveness
similar to Prolog, but to have greatly improved declarative semantics
compared with Prolog. This improved declarative semantics has
substantial benefits for program construction, verification,
debugging, transformation, and so on. Considerable emphasis is placed
on Goedel's meta-logical facilities, since this is where Prolog is
most deficient. In particular, Goedel has declarative replacements
for Prolog's var, nonvar, assert, and retract. Goedel is a strongly
typed language, its type system being based on many-sorted logic with
parametric polymorphism. It has a module system, and supports floating
point numbers and infinite precision integers and rationals. It can
solve constraints over finite domains of integers and also linear
rational constraints. It supports processing of finite sets. It also
has a flexible computation rule and a pruning operator which
generalises the commit of the concurrent logic programming languages.
The release includes the Goedel system, the SAGE partial evaluator for
Goedel, a user manual, and 50 example programs. Goedel must be
compiled in SICStus Prolog 2.1 #6 or later; Sparc and Linux
executables are included in the distribution. Goedel is available by
anonymous ftp from
ftp.cs.kuleuven.ac.be:/pub/logic-prgm/goedel/ [134.58.41.2]
ftp.cs.bris.ac.uk:/goedel [137.222.102.102]
For more information, write to goedel@compsci.bristol.ac.uk. Please
send an email message to this address (with your name, institution and
address) to this address when you obtain the system. To subscribe to
the goedel-users@compsci.bristol.ac.uk mailing list, send mail to
goedel-users-request@compsci.bristol.ac.uk
indicating that you wish to join the Goedel discussion group.
A book describing the language is now available from MIT Press:
Patricia Hill and John Lloyd, "The Godel Programming Language",
MIT Press, Cambridge, MA, 1994. ISBN 0-262-08229-2 ($45.00).
IC-Prolog II:
src.doc.ic.ac.uk:/computing/programming/languages/prolog/icprolog/.
The emulator is available at present only in Sun-4 binary form.
Source code may be released later in the year when project
finishes.
Produced by Imperial College, IC-Prolog II is a multi-threaded
Prolog system. It includes a Parlog sub-system, an interface to
TCP primitives and "mailboxes", a high level communication
system. These enable distributed applications (such as
client/server systems) to be written using logic programming.
The distribution also includes a simple expert system shell and
the preprocessor for the Prolog language extension L&O from the
book "Logic & Objects" by Frank McCabe. (The sources for the
L&O extension is also available to LPA MacProlog users in the
subdirectory 'lo'.)
See "I.C. Prolog II : a Multi-threaded Prolog System" by Damian
Chu and Keith Clark and also "IC Prolog II: a Language for
Implementing Multi-Agent Systems" by Damian Chu. Postscript
copies of these two papers may be found in the subdirectory
'papers'.
Standalone versions of the Parlog system for Sun-3 and Sun-4
can also be found in this directory.
Contact Damian Chu <dac@doc.ic.ac.uk> for questions about IC
Prolog II, and contact Zacharias Bobolakis <zb@doc.ic.ac.uk> for
information about L&O.
JB-Prolog 2.1.2 is a slim and powerfull prolog for the MacIntosh. Its key
features are: Arbitrary long integers, fast interpreter only, source
line debugger, user interface toolkit, persistent objects. It is
available from the CMU AI repository as
ftp.cs.cmu.edu:/user/ai/lang/prolog/impl/prolog/jbprolog/JBprolog2.1.2.sit.hqx
For more information contact Jan Burse, jburse@clients.switch.ch,
XLOG, Scheuchzerstr. 67, 8006 Zrich, Switzerland.
PIE2 is a Prolog interpreter for DOS. It is available on CompuServe in
the AIEXPERT forum. PIE2.zip contains the interpreter and examples, and
PIEDOC.ZIP contains the documentation. Written by Brent Ruggles
<ruggles@shell.com>.
Prolog-68 is a free WAM-based Prolog system running on Atari ST and TT
computers. Not yet finished (no floating point, some missing
built-ins). Contact Jens Kilian <jensk@hpbbn.bbn.hp.com> for
information. Available by anonymous ftp from
ftp.cs.cmu.edu:/user/ai/lang/prolog/impl/prolog/prolog68/
as a ZOO archive.
Prolog/Mali is a compiler for the higher-order language Lambda-Prolog.
Lambda-Prolog is an extension of Prolog defined by Miller (Miller,
D.A., and Nadathur, G., "Higher-order logic programming", 3rd
International Conference on Logic Programming, pages 448-462, London
1986). It is an extension of Prolog where terms are simply typed
lambda terms and clauses are higher order hereditary Harrop formulas.
The main novelties are universal quantification on goals and
implication. Prolog/Mali is a complete system which includes a C
translator, a linker, libraries, runtime, and documentation, and runs
on UNIX. It requires the MALI-V06 abstract memory package.
Prolog/Mali is available by anonymous ftp from ftp.irisa.fr:/local/pm/.
Written by Pascal Brisset <pbrisset@eis.enac.dgac.fr> (or <brisset@ecrc.de>)
and Olivier Ridoux (ridoux@irisa.fr). To be added to the mailing list,
send mail to prolog-mali-request@irisa.fr. For more information, send
mail to pm@irisa.fr.
LIFE (Logic, Inheritance, Functions, and Equations) is an experimental
programming language with a powerful facility for structured type
inheritance. It reconciles styles from functional programming, logic
programming, and object-oriented programming. It subsumes the
functionality of its precursor languages LOGIN and Le_Fun, and may be
seen as an extension of Prolog. The syntax of Wild_LIFE has been kept
as close as possible to that of the Edinburgh standard for Prolog.
LIFE offers natively high-level abstraction facilities and convenient
data and control structures particularly well-suited for AI
programming. LIFE implements a constraint logic programming language
with equality (unification) and entailment (matching) constraints over
order-sorted feature terms. The interplay of unification and matching
provides an implicit coroutining facility thanks to an automatic
suspension mechanism. This allows interleaving interpretation of
relational and functional expressions which specify structural
dependencies on objects. The Wild_LIFE interpreter is the first
implementation of the LIFE language available to the general public.
It is a product of Digital Equipment Corporation's Paris Research
Laboratory (DEC PRL). Wild_LIFE runs on MIPS/Ultrix (DECstations),
Alpha/OSF-1, SPARC/SunOS, RS/6000, and SGI machines, and should
be portable to other Unix workstations. It is implemented in C,
and includes an interface to X Windows. Wild_LIFE is available
by anonymous ftp from gatekeeper.dec.com:/pub/plan as the file
Life1.0.tar.Z. To be added to the mailing list (life-users@cs.sfu.ca),
send mail to life-users-request@cs.sfu.ca. Send bug reports to
life-bugs@cs.sfu.ca.
Open Prolog:
Open Prolog (OP) is a Prolog interpreter for the Apple Macintosh.
It follows the so-called 'Edinburgh' syntax and supports most standard
Prolog features, including Definite Clause Grammars.
Extra predicates can be added via drop-in external predicates, similar to
Hypercard's XCMDs.
OP will work in any Macintosh from a Macintosh Plus, and runs in
emulated mode on Power Macs.
The most recent version of Open Prolog is available by anonymous ftp
from its home site:
ftp.cs.tcd.ie:/languages/open-prolog/ [134.226.32.15]
It is also available from other sites, such as:
sumex-aim.stanford.edu:/info-mac/
mac.archive.umich.edu [141.211.165.41].
For more information, write to Michael Brady, Computer Science
Department, Trinity College, Dublin 2, IRELAND, send email to
brady@cs.tcd.ie, call +353 1 6081786, or fax +353 1 6772204.
PD Prolog 19:
wuarchive.wustl.edu:/mirrors/msdos/prolog/prolog19.arc (IBM PC)
aisun1.ai.uga.edu (128.192.12.9)
Portable Prolog System is an interpreter from the University of York.
Runs on any system having a Pascal compiler. For more information,
write to University of York, Software Distribution Officer, Department
of Computer Science, University of York, York, YO1 5DD, UK, call +44
(904) 59861, or fax +44 (904) 433744.
Qu-Prolog 3.2 and Ergo 4.0:
Qu-Prolog is a high-level language designed primarily for rapid
prototyping of interactive theorem provers and, more generally, for
symbolic computation on formal languages. Its object level includes
quantified terms and object variables. As an example, the interactive
theorem prover Ergo 4.0 is implemented in Qu-Prolog. The compactness
and high level of Ergo 4.0 source code demonstrate the advantages of
Qu-Prolog for such applications. Ergo includes a 'window inference'
method that is specifically designed to support hierarchical
goal-directed proofs and allow easy access to the context of a
subterm. Ergo also provides support for defining a variety of logics
and support for proving schematic theorems and answer extraction.
Ergo is being used to support the development of verified software.
The system has been tested only on a Sun4.
Qu-Prolog and Ergo are available by anonymous ftp from
ftp.cs.uq.oz.au:/pub/SVRC/
as software/qp.tar.Z and software/Ergo.tar. The tech report
techreports/tr93-18.ps.Z describes Qu-Prolog in detail. Send comments
to Peter Robinson <pjr@cs.uq.oz.au>.
SB-Prolog:
cs.arizona.edu:/sbprolog
sbcs.sunysb.edu:/pub/sbprolog
Stony Brook Prolog runs on Sun4, Pyramid-98x, DEC3100, SGI Iris,
Amiga, and MS-DOS machines. Contact warren@sbcs.sunysb.edu for more
information. Two versions are available: version 2.5 is an
interpreter for Amigas and version 3.1 is an interpreter and compiler
for Unix and MSDOS/386.
SB-Hilog runs in SB-Prolog and Quintus Prolog and is available on
sbcs.sunysb.edu:/pub/hilog/
src.doc.ic.ac.uk [146.169.2.10] contains SBProlog 3.1 executables for
MS-DOS/386 in /computing/programming/languages/prolog/sbprolog,
filename sbpmsdos.zip.
nic.funet.fi contains SBProlog executables for Amiga in
/pub/amiga/fish/disks100-199/ff140.
Modular SB-Prolog (= SB-Prolog version 3.1 plus modules) is available
by anonymous FTP from
ftp.dcs.ed.ac.uk:/pub/dts/mod-prolog.tar.Z [129.215.160.5]
Includes interpreter for SPARC. For more information, write to
Brian Paxton <mprolog@dcs.ed.ac.uk>.
[NOTE: SB-Prolog is superseded by XSB (see below) and hence is
no longer supported by Stony Brook or the University of Arizona.
The only reason to continue using SB-Prolog is for DOS, since
XSB does not run under DOS and there are currently no plans to
port it to DOS.]
SLG:
The SLG system is a meta interpreter implementation of
goal-oriented deductive query processing and non-monotonic
reasoning with the following features:
* goal-oriented query evaluation of normal logic programs
under the well-founded semantics by Van Gelder, Ross
and Schliph;
* goal-oriented query evaluation of general logic programs
under the alternating fixpoint logic by Van Gelder, with
the restriction that the body of a clause has to be either
an existential conjunction of literals or a universal
disjunction of literals.
* goal-oriented query evaluation under the stable model semantics
by Gelfond and Lifchitz.
* integration with Prolog execution, and the use of Prolog syntax
for all programs.
The SLG system is freely available by anonymous ftp from Southern
Methodist University or SUNY at Stony Brook
seas.smu.edu:/pub/ [129.119.3.2]
sbcs.sunysb.edu:/pub/XSB/ [130.245.1.15]
as the file slg.tar.gz. Comments, requests, and bug reports should
be sent to Weidong Chen, <wchen@seas.smu.edu>, Computer Science and
Engineering, Southern Methodist University, Dallas, Texas 75275-0122,
phone 214-768-3097, or David Scott Warren, <warren@cs.sunysb.edu>,
Department of Computer Science, SUNY at Stony Brook, Stony Brook,
NY 11794-4400, phone 516-632-8454.
SWI Prolog:
swi.psy.uva.nl:/pub/SWI-Prolog/ [145.18.114.17] (Main source)
Files: pl-x.y.z.tar.gz (source, currently 2.8.0)
w32plxyz.exe (self-installing Windows 95/NT version)
refman/ (preformatted reference manual)
HTMLman/ (HTML version of the manual)
WWW: http://swi.psy.uva.nl/usr/jan/SWI-Prolog.html (home)
http://www.swi.psy.uva.nl/usr/jan/SWI-Prolog/Manual/Title.html (man)
List: prolog@swi.psy.uva.nl, subscribe to prolog-request@swi.psy.uva.nl
Author: Jan Wielemaker, jan@swi.psy.uva.nl.
Features: Complete, including module system, 2-way C-interface,
garbage collector (transparent to C-code), runtime generation,
auto-loading, do-what-i-mean and a very fast compiler. Edinburgh
compatible with lots of ISO and Quintus compatible extensions.
GUI (Portable X11 and Windows) using XPCE (in part 1 of the Prolog
Resource Guide). GUI Prolog development environment is under
development. Contact prolog-request@swi.psy.uva.nl.
Platforms: Unix (SunOs, Solaris, Linux, IRIX, HPUX, AIX, OSF/1
on the DEC/Alpha and many more) Win32 (Windows 95 and NT, may
be recompiled using MSVC 4.1 for Windows 3.1 under Win32s).
Free for non-commercial use. Licenses available for commercial
use (contact prolog-request@swi.psy.uva.nl).
Toy Prolog is an interpreter written in Pascal. About 3500 lines of
source. Free with "Prolog for Programmers" by Kluzniak and Szpakowicz
(Academic Press 1985). The Atari ST version is no longer supported.
TPM (Transparent Prolog Machine) is a demo version of LPA MacProlog
with the TPM debugger included. Runs on Apple Macintosh. It is
available by anonymous FTP from hcrl.open.ac.uk:/pub/software/.
Tricia is a free Prolog high-level emulator with interpreter available
by email from Uppsala University. Tricia currently runs on the Apple
Macintosh. It used to run on Sun3, Sun4, Apollo DN-3500/4500/5500 (OS
version 10.*) and HP-730's, but support for those platforms has been
discontinued. For more information, write to Uppsala University,
Tricia project, Computing Science Department, Box 311, S-751 05
UPPSALA, Sweden, fax +46 18 511925, or email to
tricia-request@csd.uu.se. It is available by anonymous ftp from
ftp.csd.uu.se:/pub/Tricia/
A copy is also available in the directory
/afs/umich.edu/group/itd/archive/mac/development/languages
if your site runs the Andrew File System, or by anonymous ftp from
mac.archive.umich.edu.
WAMCC 2.2 is a WAM-based Prolog to C compiler. It conforms more or
less to the Edinburgh standard, and includes most of the usual
built-in predicates, a top-level, a Prolog debugger and a WAM
debugger. WAMCC is designed to be easily extended (see clp(FD) in
[2-5], for example). WAMCC's speed is halfway between SICStus emulated
and SICStus native code on a Sparc (1.5 times faster and 1.5 times
slower, respectively). WAMCC requires GCC 2.4.5 or higher and has been
tested on Sparc workstations. It should be easily ported to 32-bit
machines with GCC. WAMCC is available free by anonymous ftp from
ftp.inria.fr:/INRIA/Projects/ChLoE/LOGIC_PROGRAMMING/wamcc/
For more information, write to Daniel Diaz <Daniel.Diaz@inria.fr>,
INRIA Rocquencourt, FRANCE.
XSB is a Prolog-based Logic Programming System that extends the
standard functionality of Prolog with an implementation of OLDT
(tabling) and HiLog terms. It is a descendent of PSB-Prolog and
SB-Prolog. OLDT resolution is useful for recursive query computation,
allowing programs to terminate correctly in many cases where Prolog
does not. HiLog supports a type of higher-order programming in which
predicate symbols can be variable or structured. This allows
unification to be performed on the predicate symbols themselves in
addition to the arguments of the predicates. XSB includes an
optimizing compiler, C interface, a module system, list processing
libraries, and dynamic loading. XSB is a descendant of SB-Prolog.
XSB runs on Sun3, Sun4, 386/486 PCs (Linux and 386 BSD), SGI machines
(IRIX), HP 300/400 series (HP-UX) and NeXT, and can be compiled using
either the GNU C compiler or the Sun C compiler. Porting XSB to any
32-bit machine running Unix should be straightforward. THIS IS A BETA
RELEASE. XSB is available by anonymous ftp from
sbcs.sunysb.edu:/pub/XSB/XSB.tar.Z [130.245.1.15]
For more information, write to XSB Research Group, Computer Science
Department, SUNY at Stony Brook, Stony Brook, NY 11794, or send email to
xsb-contact@cs.sunysb.edu.
See also BeBOP and NCL in [2-3].
Go Back Up
Go To Previous
Go To Next