| languages designed to manipulate logic predicates. Often used to build expert systems |
| Scheme, Prolog | |
| "Paradigms of AI Programming" | |
| ? | |
| book with interpreters and compilers in Common Lisp | |
| Peter Norvig | |
| bookstore, and ftp://unix.sri.com/pub/norvig/* | |
| ? | |
| ? |
| Prolog | |
| ? Prolog package from the University of Calgary ? | |
| ? | |
| ? | |
| ? | |
| ftp://cpsc.ucalgary.ca/pub/prolog1.1/prolog11.tar.Z | |
| |
| Scheme | |
| relies on continuations | |
| ? | |
| ? |
| Prolog | |
| ? slog ? | |
| ? | |
| translator(Prolog->Scheme) | |
| dorai@cs.rice.edu | |
| ftp://titan.rice.edu/public/slog.sh | |
| macros expand syntax for clauses, elations etc, into Scheme | |
| Chez Scheme | |
| reliese on continuations | |
| ? |
| Prolog | |
| ?; ? (two systems) | |
| ?; ? | |
| ?; ? | |
| ? | |
| ftp://aisun1.ai.uga.edu/ai.prolog/Contents | |
| ?; ? | |
| MSDOS, Macintosh; MSDOS | |
| Michael Covington <mcovingt@uga.cc.uga.edu> | |
| ?; ? |
| Prolog (variant) | |
| Aditi | |
| Beta Release | |
| interpreter, database | |
| Machine Intelligence Project, Univ. of Melbourne, Australia | |
| send email to aditi@cs.mu.oz.au | |
| The Aditi Deductive Database System is a multi-user deductive database system. It supports base relations defined by facts (relations in the sense of relational databases) and derived relations defined by rules that specify how to compute new information from old information. Both base relations and the rules defining derived relations are stored on disk and are accessed as required during query evaluation. The rules defining derived relations are expressed in a Prolog-like language, which is also used for expressing queries. Aditi supports the full structured data capability of Prolog. Base relations can store arbitrarily nested terms, for example arbitrary length lists, and rules can directly manipulate such terms. Base relations can be indexed with B-trees or multi-level signature files. Users can access the system through a Motif-based query and database administration tool, or through a command line interface. There is also in interface that allows NU-Prolog programs to access Aditi in a transparent manner. Proper transaction processing is not supported in this release. | |
| Sparc/SunOS4.1.2 Mips/Irix4.0 | |
| <aditi@cs.mu.oz.au> | |
| December 17th, 1992 |
| ALF [prolog variant] | |
| alf (Algebraic Logic Functional programming language) | |
| ? | |
| runtime, compiler(Warren Abstract Machine) | |
| Rudolf Opalla <opalla@julien.informatik.uni-dortmund.de> | |
| ftp://ftp.germany.eu.netpub/programming/languages/LogicFunctional | |
| ALF is a language which combines functional and logic programming techniques. The foundation of ALF is Horn clause logic with equality which consists of predicates and Horn clauses for logic programming, and functions and equations for functional programming. Since ALF is an integration of both programming paradigms, any functional expression can be used in a goal literal and arbitrary predicates can occur in conditions of equations. | |
| October 8th, 1992 |
| Prolog | |
| Amzi! Logic Explorer | |
| 3.3 | |
| interpreter | |
| Amzi! inc. | |
| http://www.amzi.com/share.htm | |
| Full tutorial and interpreted development environment | |
| shareware for non-personal use | |
| Windows | |
| Amzi! inc. info@amzi.com | |
| June 1st, 1996 |
| BABYLON | |
| BABYLON | |
| 2.3 | |
| ai workbench (expert system development environment) | |
| members of GMD, FIT-KI | |
| ftp://ftp.gmd.de/gmd/ai-research/Software/Babylon/* or in WWW from http://www.gmd.de/ | |
| BABYLON is a development environment for expert systems. It includes frames, rules, constraints, a prolog-like logic formalism, and a description language for diagnostic applications (texi). | |
|
Christaller, T., Di Primio, F., Voss, A. (Hrsg.).
Die KI-Werkbank Babylon.
Eine offene und portable Entwicklungsumgebung fuer
Expertensysteme. Addison-Wesley, 1989, ISBN 3-89319-155-0
Christaller, T., Di Primio, F., Voss, A. (eds). The AI-Workbench BABYLON. An open and portable development environment for expert systems. Academic Press, London, 1992, ISBN 0-12-174235-0; Guesgen, H.-W., CONSAT: A system for constraint satisfaction. Research Notes in Artificial Intelligence, Morgan Kaufman, San Mateo, 1989. | |
| Common Lisp, works under: Macintosh Common Lisp, Franz Allegro, CLisp, CMU, AKCL etc. | |
| juergen.walther@gmd.de | |
| June 22nd, 1994 |
| Prolog | |
| Beta-Prolog | |
| 1.5 | |
| interpreter(?), libraries, debugger | |
| Neng-Fa Zhou <zhou@mse.kyutech.ac.jp> form "Real Name <email@address>". Surface mail addresses are not used unless there is no email address. | |
| ftp://ftp.kyutech.ac.jp/pub/Language/prolog/* | |
| ? | |
| Incorporates most built-in predicates in ISO-Prolog. | |
| April 5th, 1995 |
| Prolog | |
| BinProlog | |
| 1.71 | |
| interpreter?, documentation | |
| ? | |
| ftp://clement.info.umoncton.ca/BinProlog/* | |
| BinProlog 1.71 is at this time probably the fastest freely available C-emulated Prolog. | |
| IBM-PC/386, Sun-4, Sun-3, NeXT | |
| Paul Tarau <tarau@info.umoncton.ca> | |
| April 3rd, 1993 |
| Prolog + constraints over Finite Domains and Booleans | |
| clp(FD) | |
| 2.2 | |
| compiler clp(FD)->C, FD solver, runtime, debugger. | |
| Daniel Diaz - INRIA Rocquencourt - FRANCE | |
| ftp://ftp.inria.fr/INRIA/Projects/ChLoE/LOGIC_PROGRAMMING/clp_fd | |
|
clp(FD) is a constraint logic programming language
over Finite Domains. clp(FD) is based on the wamcc
Prolog compiler which translates Prolog to C.
clp(FD) provides several constraints "a la CHIP" on Finite Domains and Booleans and some facilities to build new constraints. clp(FD) is 4 times faster than CHIP v3.2 on average. | |
| free (see COPYRIGHT notice) | |
| GNU C (gcc) version 2.4.5 or higher | |
| Sparc workstations, PC under linux, sony mews, dec ultrix | |
| Generally to 32-bit machines with gcc. | |
| Daniel Diaz <Daniel.Diaz@inria.fr> | |
| no longer maintained - see GNU Prolog by the same author. | |
| August 1st, 1994 |
| CLP (Constraint Logic Programming language) [Prolog variant] | |
| CLP(R) | |
| 1.2 | |
| runtime, compiler(byte-code), contstraint solver | |
| IBM | |
| mail to Joxan Jaffar <joxan@watson.ibm.com> | |
| CLP(R) is a constraint logic programming language with real-arithmetic constraints. The implementation contains a built-in constraint solver which deals with linear arithmetic and contains a mechanism for delaying nonlinear constraints until they become linear. Since CLP(R) subsumes PROLOG, the system is also usable as a general-purpose logic programming language. There are also powerful facilities for meta programming with constraints. Significant CLP(R) applications have been published in diverse areas such as molecular biology, finance, physical modelling, etc. We are distributing CLP(R) in order to help widen the use of constraint programming, and to solicit feedback on the system | |
| free for academic and research purposes only | |
| unix, msdos, OS/2 | |
| Roland Yap <roland@bruce.cs.monash.edu.au>, Joxan Jaffar | |
| October 14th, 1992 |
| Prolog (variant) | |
| Coral | |
| 1.5.2 | |
| interpreter, interface(C++), documentation | |
| Raghu Ramakrishnan, et.al. | |
| http://www.cs.wisc.edu/coral/ | |
| The CORAL deductive database/logic programming system was developed at the University of Wisconsin-Madison. The CORAL declarative language is based on Horn-clause rules with extensions like SQL's group-by and aggregation operators, and uses a Prolog-like syntax. * Many evaluation techniques are supported, including bottom-up fixpoint evaluation and top-down backtracking. * A module mechanism is available. Modules are separately compiled; different evaluation methods can be used in different modules within a single program. * Disk-resident data is supported via an interface to the Exodus storage manager. * There is an on-line help facility | |
| g++ | |
| Shaun Flisakowski <flisakow@cs.wisc.edu> | |
| Sun4, Sun Solaris, Hpux, Linux | |
| Frozen - bug fixes only. | |
| January 29th, 1993 |
| Prolog | |
| Frolic | |
| ? | |
| ? | |
| ? | |
| ftp://cs.utah.edu/pub/frolic.tar.Z | |
| ? | |
| Common Lisp | |
| ? | |
| November 23rd, 1991 |
| ISO Prolog + constraint solving over finite domains (FD) | |
| GNU Prolog | |
| 1.0.0 | |
| native compiler, interpreter, library. | |
| Daniel Diaz <Daniel.Diaz@inria.fr> | |
| ftp://ftp.inria.fr/INRIA/Projects/loco/gnu-prolog/ or from any GNU site (in /gnu/prolog/) | |
| A native compiler for ISO Prolog with constraint solving over finite domains. GNU Prolog accepts a Prolog+constraint program and produces a native binary which is stand-alone. GNU Prolog also offers a classical interactive interpreter. The Prolog part conforms to the ISO standard for Prolog with many extensions: global variables, OS interface, sockets,... GNU Prolog also includes a very efficient constraint solver over Finite Domains (FD). | |
| users-prolog@gnu.org (mailing list) | |
| bug-prolog@gnu.org | |
| April 19th, 1999 |
| Goedel | |
| Goedel | |
| 1.4 | |
| book, compiler, user manual, system modules, example programs | |
| Jiwei Wang <jiwei@lapu.bristol.ac.uk> | |
| ftp://ftp.cs.kuleuven.ac.be/pub/logic-prgm/goedel/README ftp://ftp.cs.bris.ac.uk/goedel/README both contain further pointers. | |
| An implementation of a significant subset of Goedel. Goedel is a declarative, general-purpose strongly-typed logic programming language. The type system is based on many-sorted logic with parametric polymorphism. Modularity is supported, as well as infinite precision arithmetic, limited constraint satisfaction, and finite sets. | |
| The Goedel Programming Language, P.M. Hill & J.W. Lloyd, MIT Press, 1994, ISBN 0-262-08229-2. | |
| SICStus Prolog version 2.1 #6 (or later). Run time system for SPARCstation provided, though. | |
| underging continuing development | |
| goedel@compsci.bristol.ac.uk | |
| May 16th, 1994 |
| Prolog | |
| ISO draft standard | |
| ? (What year??) | |
| language definition | |
| ? | |
| ftp://ftp.th-darmstadt.de ? | |
| ? | |
| July 6th, 1992 |
| Isabelle | |
| Issabelle-93 | |
| ? | |
| ? | |
| Written by Lawrence C Paulson and Tobias Nipkow? | |
| ftp://ftp.cs.cmu.edu/afs/cs.cmu.edu/user/mkant/Public/Lisp/ops5* | |
| Isabelle is a generic theorem prover. New logics are introduced by specifying their syntax and rules of inference. Proof procedures can be expressed using tactics and tacticals. The latest version, Isabelle-93, is significantly faster than Isabelle-92 and has several other improvements. | |
| ? | |
| Larry.Paulson@cl.cam.ac.uk Tobias.Nipkow@informatik.tu-muenchen.de? | |
| December 20th, 1993 |
| Janus | |
| jc | |
| 1.50 alpha | |
| compiler(->C) | |
| David Gudeman <gudeman@cs.arizona.edu> | |
| ftp://cs.arizona.edu/janus/jc/* | |
| jc is a janus-to-C compiler (considerably faster than qdjanus). jc is a _sequential_ implementation of a _concurrent_ language. | |
| jc-bugs@cs.arizona.edu | |
| sun-4, sun-3, Sequent Symmetry | |
| jc is an experimental system, undergoing rapid development. It is in alpha release currently. | |
| janusinterest-request@parc.xerox.com | |
| June 9th, 1992 |
| Prolog | |
| LM-PROLOG | |
| ? | |
| ? | |
| Ken Kahn and Mats Carlsson | |
| ftp://sics.se/archives/lm-prolog.tar.Z | |
| ? | |
| ZetaLisp | |
| ? | |
| ? |
| Lolli (logic programming) | |
| Lolli | |
| ? | |
| ? | |
| ? Josh Hodas <hodas@saul.cis.upenn.edu> ? | |
| ftp://ftp.cis.upenn.edu/pub/Lolli/Lolli-07.tar.Z. | |
|
Lolli is an interpreter for logic programming based
on linear logic principles.
Lolli can be viewed as a refinement of the the Hereditary Harrop formulas of Lambda-Prolog. All the operators (though not the higher order unification) of Lambda-Prolog are supported, but with the addition of linear variations. Thus a Lolli program distinguishes between clauses which can be used as many, or as few, times as desired, and those that must be used exactly once. | |
| ML | |
| November 8th, 1992 |
| Mercury | |
| Mercury | |
| 0.7.3 | |
| compiler(->C), library, run-time, profiler, documentation, GUI interface (tcl/tk + openGL), examples | |
| mercury@cs.mu.oz.au (The Mercury Team) | |
| see <http://www.cs.mu.oz.au/mercury> | |
|
Mercury is a new logic/functional programming language,
which combines the clarity and expressiveness of
declarative programming with advanced static analysis
and error detection features. Its highly optimized
execution algorithm delivers efficiency far in excess of
existing logic programming systems, and close to
conventional programming systems. Mercury addresses the
problems of large-scale program development, allowing
modularity, separate compilation, and numerous
optimization/time trade-offs.
The home Mercury ftp site, turiel.cs.mu.oz.au, contains /pub/mercury/mercury-0.7.3-extras.tar.gz which includes interfaces to OpenGL libraries, Tcl/Tk, a CGI library, an ODBC interface, and a few other goodies. We provide this archive separately because not all of the extras are under the GPL. | |
| |
| <mercury-bugs@cs.mu.oz.au> | |
| GNU Public Licence (GPL plus LGPL) | |
| GNU C 2.6.3 or higher and GNU Make 3.69 or higher | |
| IRIX 5, Solaris, Alpha/OSF, Linux, Ultrix, BSD, Windows 95/NT | |
| should port to any POSIX-like system without too much trouble | |
| undergoing active development | |
| mailing list <mercury-users-request@cs.mu.oz.au>, comp.lang.prolog and/or comp.lang.misc | |
| <mercury@cs.mu.oz.au> | |
| mailing list <mercury-announce-request@cs.mu.oz.au> | |
| <mercury@cs.mu.oz.au> | |
| 11/1997 |
| Prolog | |
| Modular SB-Prolog | |
| ? | |
| interpreter | |
| ? | |
| ftp://ftp.dcs.ed.ac.uk/pub/dts/mod-prolog.tar.Z | |
| SB-Prolog version 3.1 plus modules | |
| GNU General Public License | |
| Sparc | |
| Brian Paxton <mprolog@dcs.ed.ac.uk> | |
| ? |
| Prolog | |
| Open Prolog | |
| 1.0.3d22 | |
| interpreter, examples | |
| Michael Brady <beady@cs.tcd.ie> | |
| ftp://ftp.cs.tcd.ie/pub/languages/open-prolog/* | |
| Text-oriented Prolog system for the Macintosh (Edimburgh syntax), with a MPW-like worksheet as the main user interface. | |
| |
| Macintosh | |
| send a postcard | |
| Michael Brady <brady@cs.tcd.ie> | |
| June 19th, 1995 |
| OPS5 | |
| PD OPS5 | |
| ? | |
| interpreter | |
| Written by Charles L. Forgy and ported to Common Lisp by George Wood and Jim Kowalski. | |
| ftp://ftp.cs.cmu.edu/afs/cs.cmu.edu/user/mkant/Public/Lisp/ops5* | |
|
Public domain implementation of an OPS5 interpreter. OPS5 is
a programming language for rule-based production systems.
A rule consists of pre-condition(s) and the resulting
action. The system as a whole acts first checking the
status of system in its working memory and matches the
rules to see if there are rules that are satisfied,
and then the action in one selected satisfied rule is
executed.
There is a commercial version available called OPS83. Please contact the author for information. | |
| Common Lisp | |
| ? Mark Kantrowitz <mkant+@cs.cmu.edu> ? | |
| October 17th, 1992 |
| Prolog | |
| PI | |
| ? | |
| library | |
| ? | |
| ftp://ftp.ncc.up.pt/pub/prolog/ytoolkit.tar.Z | |
| PI is a interface between Prolog applications and XWindows that aims to be independent from the Prolog engine, provided that it has a Quintus foreign function interface (such as SICStus, YAP). It is mostly written in Prolog and is divided in two libraries: Edipo - the lower level interface to the Xlib functions; and Ytoolkit - the higher level user interface toolkit | |
| Ze' Paulo Leal <zp@ncc.up.pt> | |
| March 2nd, 1993 |
| Lambda-Prolog | |
| Prolog/Mali (PM) | |
| ? 6/23/92 ? | |
| compiler(->C), linker, libraries, runtime, documentation | |
| Pascal Brisset <brisset@irisa.fr> | |
| ftp://ftp.irisa.fr/pm/* | |
| Lambda-Prolog, a logic programming language defined by Miller, 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. | |
|
Miller D.A. and Nadathur G. "Higher-order logic
programming", 3rd International Conference on Logic
Programming, pp 448-462, London 1986.
Nadathur G. "A Higher-Order Logic as a Basis for Logic Programming", Thesis, University of Pennsylvania, 1987. | |
| MALI-V06 abstract memory. MALI is available by anonymous ftp from ftp.irisa.fr | |
| unix | |
| prolog-mali-request@irisa.fr | |
| pm@irisa.fr | |
| July 6th, 1992 |
| Janus | |
| qdjanus | |
| 1.3 | |
| translator(prolog) | |
| Saumya Debray <debray@cs.arizona.edu> | |
| ftp://cs.arizona.edu/janus/qdjanus/* | |
| janus is a janus-to-prolog compiler meant to be used with Sicstus Prolog | |
| mostly compliant with "Programming in Janus" by Saraswat, Kahn, and Levy. | |
| May 18th, 1992 |
| Prolog | |
| SB-Prolog | |
| 3.1 ? | |
| ? | |
| interpreter | |
| ftp://sbcs.sunysb.edu/pub/sbprolog | |
| ? | |
| GNU General Public License | |
| ? warren@sbcs.sunysb.edu ? | |
| ? |
| Parlog | |
| SPM System (Sequential Parlog Machine) | |
| ? | |
| ?, documenation | |
| ? | |
| ? ftp://nuri.inria.fr/lang/Parlog.tar.Z | |
| a logic programming language ? | |
| Steve Gregory, "Parallel Logic Programming in PARLOG", Addison-Wesely, UK, 1987 | |
| ? no source code ? | |
| Sun-3 ? | |
| ?? |
| Prolog | |
| SWI-Prolog | |
| 1.7.2 | |
| ? | |
| Jan Wielemaker <jan@swi.psy.uva.nl> | |
| ? | |
| superset | |
| "very nice Ed. style prolog, best free one I've seen" | |
| GNU General Public License | |
| Sun-4, Sun-3 (complete); Linux, DEC MIPS (done but incomplete, support needed); RS6000, PS2/AIX, Atari ST, Gould PN, NeXT, VAX, HP-UX (known problems, support needed); MSDOS (status unknown), OS/2 | |
| activly developed | |
| prolog-request@swi.psy.uva.nl | |
| (OS/2) Andreas Toenne <atoenne@mpi-sb.mpg.de> | |
| July 23rd, 1993 |
| Pascal, Lisp, APL, Scheme, SASL, CLU, Smalltalk, Prolog | |
| Tim Budd's C++ implementation of Kamin's interpreters | |
| ? | |
| interpretors, documentation | |
| Tim Budd <budd@cs.orst.edu> | |
| ? ftp://cs.orst.edu/pub/budd/kamin/*.shar | |
| a set of interpretors written as subclasses based on "Programming Languages, An Interpreter-Based Approach", by Samuel Kamin. | |
| C++ | |
| ? | |
| Tim Budd <budd@fog.cs.orst.edu> | |
| September 12th, 1991 |
| Prolog | |
| UPMAIL Tricia Prolog | |
| ? | |
| ? | |
| ? | |
| ftp://ftp.csd.uu.se/pub/Tricia/README | |
| ? | |
| <tricia-request@csd.uu.se> | |
| ? |
| Prolog | |
| wamcc | |
| 2.2 | |
| compiler Prolog->C, runtime, Prolog debugger, WAM debugger. | |
| Daniel Diaz - INRIA Rocquencourt - FRANCE | |
| ftp://ftp.inria.fr/INRIA/Projects/ChLoE/LOGIC_PROGRAMMING/wamcc | |
|
wamcc is a Prolog Compiler which translates Prolog to
C via the WAM. wamcc has a syntax very close to the
future ansi standard. wamcc offers the most usual
built-in predicates, a top-level, a Prolog debugger and a
WAM debugger. wamcc is designed to be easily extended
(e.g. see clp(FD)).
From an efficiency point of view, wamcc is between SICStus "emulated" and SICStus "native code" on Sparc machines (1.5 times faster than SICStus emulated, 1.5 times slower than SICStus "native code"). | |
| free (see COPYRIGHT notice) | |
| GNU C (gcc) version 2.4.5 or higher | |
| Sparc workstations, PC under linux, sony mews, dec ultrix | |
| Generally to 32-bit machines with gcc. | |
| Daniel Diaz <Daniel.Diaz@inria.fr> | |
| no longer maintained - see GNU Prolog by the same author. | |
| August 1st, 1994 |
| LIFE (Logic, Inheritance, Functions, and Equations) | |
| Wild_LIFE | |
| first-release | |
| interpreter, manual, tests, libraries, examples | |
| Paradise Project, DEC Paris Research Laboratory. | |
| ftp://gatekeeper.dec.com/pub/plan/Life.tar.Z | |
| LIFE 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. LIFE implements a constraint logic programming language with equality (unification) and entailment (matching) constraints over order-sorted feature terms. The Wild_LIFE interpreter has a comfortable user interface with incremental query extension ability. It contains an extensive set of built-in operations as well as an X Windows interface. | |
| semantic superset of LOGIN and LeFun. Syntax is similar to prolog. | |
| life-bugs@prl.dec.com | |
| MIPS-Ultrix | |
| good in theory | |
| life-request@prl.dec.com | |
| Peter Van Roy <vanroy@prl.dec.com> | |
| December 14th, 1992 |
| Prolog | |
| XSB | |
| 1.2 | |
| interpreter, preprocessor(HiLog), documentation | |
| XSB research group / SUNY at Stony Brook | |
| ftp://sbcs.sunysb.edu/pub/XSB/XSB.tar.Z | |
| XSB extends the standard functionality of Prolog (being a descendant of PSB- and SB-Prolog) to include implementations of OLDT (tabling) and HiLog terms. OLDT resolution is extremely 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. Of course, Tabling and HiLog can be used together. | |
| Sun, Solaris, NeXT, Linux, 386 BSD, IRIX, HP-UX | |
| Generally to 32-bit machines. | |
| xsb-contact@cs.sunysb.edu | |
| July 28th, 1993 |
| Prolog | |
| XWIP (X Window Interface for Prolog) | |
| 0.6 | |
| library | |
| ? | |
| ftp://export.lcs.mit.edu/contrib/xwip-0.6.tar.Z | |
| It is a package for Prologs following the Quintus foreign function interface (such as SICStus). It provides a (low-level) Xlib style interface to X. The current version was developed and tested on SICStus 0.7 and MIT X11 R5 under SunOS 4.1.1. | |
| It is adaptable to many other Unix configurations. | |
| xwip@cs.ucla.edu | |
| Febuary 25th, 1993 |
Please send updates to free-compilers@idiom.com
The HTML is maintained by David Muir Sharnoff and the entries themselves are currently maintained by Bryan Miller.
Copyright (c) 1992-1998 David Muir Sharnoff, All Rights Reserved
Copyright (c) 1994-1996, Steven Allen Robenalt, All Rights Reserved