Search the FAQ Archives

3 - A - B - C - D - E - F - G - H - I - J - K - L - M
N - O - P - Q - R - S - T - U - V - W - X - Y - Z - Internet FAQ Archives

Artificial Intelligence FAQ: Open Source AI Software 6/6 [Monthly posting]
Section - [6-1] Languages

( Part1 - Part2 - Part3 - Part4 - Part5 - Part6 - Part7 - Single Page )
[ Usenet FAQs | Web FAQs | Documents | RFC Index | Business Photos and Profiles ]

Top Document: Artificial Intelligence FAQ: Open Source AI Software 6/6 [Monthly posting]
Previous Document: News Headers
Next Document: [6-2] General AI Software
See reader questions & answers on this topic! - Help others by sharing your knowledge

   Its assumed that you can find your way to common languages like
   LISP, C++ or Prolog by doing a web search; what are listed here are
   some other languages that AI researchers may find
   interesting. [Because I had trouble finding a good prolog recently,
   I've added some prolog listings here.]

   XSB Prolog:

   XSB is a Logic Programming and Deductive Database system for Unix
   and Windows. It is being developed at The Computer Science
   Department, Stony Brook University, in collaboration with
   Katholieke Universiteit Leuven, Universidade Nova de Lisboa, and
   Uppsala Universitet.

   Amzi! Prolog + Logic Server:

   "Embed Prolog rule-based components in C/C++, Java, Delphi, Visual
   Basic, Web Servers and more. Develop Unicode and/or ASCII
   logic-bases using the Windows interactive development environment
   (IDE). Integrate them with ODBC databases. Deploy them with the
   Logic Server Libraries. Extend Amzi! Prolog with your own
   functions/libraries. For Windows, Linux, Solaris, HP/UX. Available
   on any other platform with a custom port (see below). Royalty-free
   Free Academic, Personal & Evaluation License.


   Mozart is an advanced development platform for intelligent,
   distributed applications.  The system is the result of a decade of
   research in programming language design and implementation,
   constraint-based inferencing, distributed computing, and
   human-computer interfaces.

   JEOPS - The Java Embedded Object Production System:

   It's a project intended to give Java the power of production
   systems. JEOPS adds forward chaining, first-order production rules
   to Java through a set of classes designed to provide this language
   with some kind of declarative programming. With that, the
   development of intelligent applications, such as software agents or
   expert systems is facilitated.


   Kiev is a backwards-compatible extension of Java that includes support
   for (amount other things) lambda-calculus closures (ie functional
   programming) and Prolog-like logic programming.  Please see


   LISP's theoretical origins lie in Church's lambda calculus.  A number of
   new languages that fix some shortcomings of LISP's implementation of the
   lambda calculus are Scheme (simpler and fully tail recursive), ML
   (support for types using the typed lambda calculus; and Hashell (like ML but
   it implements lazy evaluation properly;

   POPLOG is a multi-language software development environment
   providing incremental compilers for a number of interactive
   programming languages, notably: Pop-11, Prolog, and Common Lisp.


   CLIPS is a productive development and delivery expert system tool
   which provides a complete environment for the construction of rule
   and/or object based expert systems. CLIPS is used throughout the
   public and private community including: all NASA sites and branches
   of the military, numerous federal bureaus, government contractors,
   universities, and many companies.  The CLIPS home page is: 


   Screamer is an extension of Common Lisp that adds support for
   nondeterministic programming.  Screamer consists of two levels.  The
   basic nondeterministic level adds support for backtracking and
   undoable side effects.  On top of this nondeterministic substrate,
   Screamer provides a comprehensive constraint programming language in
   which one can formulate and solve mixed systems of numeric and
   symbolic constraints.  Together, these two levels augment Common Lisp
   with practically all of the functionality of both Prolog and
   constraint logic programming languages such as CHiP and CLP(R).
   Furthermore, Screamer is fully integrated with Common Lisp. Screamer
   programs can coexist and interoperate with other extensions to Common
   Lisp such as CLOS, CLIM and Iterate.

   In several ways Screamer is more efficient than other implementations
   of backtracking languages.  First, Screamer code is transformed into
   Common Lisp which can be compiled by the underlying Common Lisp
   system.  Many competing implementations of nondeterministic Lisp are
   interpreters and thus are far less efficient than Screamer.  Second,
   the backtracking primitives require fairly low overhead in Screamer.
   Finally, this overhead to support backtracking is only paid for those
   portions of the program which use the backtracking primitives.
   Deterministic portions of user programs pass through the Screamer to
   Common Lisp transformation unchanged.  Since in practise, only small
   portions of typical programs utilize the backtracking primitives,
   Screamer can produce more efficient code than compilers for languages
   in which backtracking is more pervasive.

   Screamer is fairly portable across most Common Lisp implementations.
   It currently runs under Genera 8.1.1 and 8.3 on both Symbolics 36xx
   and Ivory machines, under Lucid 4.0.2 and 4.1 on Sun SPARC machines,
   under MCL 2.0 and 2.0p2 on Apple Macintosh machines, and under Poplog
   Common Lisp on Sun SPARC machines.  It should run under any
   implementation of Common Lisp which is compliant with CLtL2 and with
   minor revision could be made to run under implementations compliant
   with CLtL1 or dpANS.

   Screamer is available by anonymous FTP from

   Contact Jeffrey Mark Siskind <> or David McAllester
   <> for more information.

   The Screamer Tool Repository, a collection of user-contributed
   Screamer code, is available by anonymous ftp from

   or by WWW from

   Please direct all inquires about the repository to 

User Contributions:

Comment about this article, ask questions, or add new information about this topic:


Top Document: Artificial Intelligence FAQ: Open Source AI Software 6/6 [Monthly posting]
Previous Document: News Headers
Next Document: [6-2] General AI Software

Part1 - Part2 - Part3 - Part4 - Part5 - Part6 - Part7 - Single Page

[ Usenet FAQs | Web FAQs | Documents | RFC Index ]

Send corrections/additions to the FAQ Maintainer:,

Last Update March 27 2014 @ 02:11 PM