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
faqs.org - Internet FAQ Archives

comp.lang.prolog Frequently Asked Questions


[ Usenet FAQs | Web FAQs | Documents | RFC Index | Restaurant inspections ]
Posted-By: auto-faq script
Archive-name: prolog/faq

See reader questions & answers on this topic! - Help others by sharing your knowledge
Original-by: jamie@cs.sfu.ca (Jamie Andrews)
Version: 1.22
Last-modified: 2/28/97 by jamie@cs.sfu.ca (Jamie Andrews)

     This article contains the answers to some Frequently Asked
Questions (FAQ) often seen in comp.lang.prolog.  It is posted
(twice a month, currently on the 1st and 16th) to help reduce
volume in this newsgroup and to provide hard-to-find information
of general interest.

     The World Wide Web URL for this FAQ is:
http://fas.sfu.ca/0/cs/people/ResearchStaff/jamie/personal/prolog-faq.1

     This article includes answers to the following questions.

0. General information
1. What is the Association for Logic Programming?
2. Where can I get a public-domain, free Prolog for (the IBM PC,
   the Mac, Unix)?
3. What commercial systems are available?  What about systems
   available for a price from research institutions?
4. How do I get in touch with my Prolog's users' group,
   sales representative, or technical support line?
5. I think language X is better than Prolog.  What do you think?
6. My Prolog prof assigned me this problem.  Can you help
   me with it?
7. Can you suggest some books on Prolog?
8. Are there any FTP archive sites for comp.lang.prolog?
9. How can I get a copy of the draft ISO Prolog standard?
   Where can I go for more information about it?
10. How does the WAM (Warren Abstract Machine) work?  How do I
   write a WAM-based compiler or a WAM emulator?
11. Is there a WWW (World Wide Web) page on logic programming?

     Please forward suggestions for further questions and
answers to the current FAQ maintainer, jamie@cs.sfu.ca (Jamie
Andrews).

Changes in this version:
* Added reference to Bratko book.
* Updated reference to Prolog Management Group.
* Deleted reference to obsolete Prologs at Univ. of Georgia.
* Put public-domain Prolog entries in alphabetical order.
* Reworded public-domain Prologs introduction slightly.
* Updated Quintus Prolog entry.
* Updated ProLog by BIM entry.

			*	*	*

0. General information

     The newsgroup "comp.lang.prolog" discusses the language
Prolog and other "logic programming" languages.  Logic
programming languages, in general, are programming languages
which incorporate some of the language of mathematical logic;
unification and backtracking search are common operational
features.  For more background information about Prolog, see the
list of books in Question 7 of this list.

     To cut down on unnecessary postings to comp.lang.prolog,
whenever I see a question there that is answered by the FAQ
list, I (Jamie) try to respond to the questioner by e-mail,
quoting the relevant section of this list.

			*	*	*

1. What is the Association for Logic Programming?

     To keep up with the current state of logic programming
technology, readers can join the Association for Logic
Programming (ALP) and receive their Newsletter.  For details on
how to join, contact:

        Cheryl Anderson,
        ALP Administrative Secretary,
        Dept. of Computing,
        Imperial College,
        180 Queen's Gate,
        London, SW7 2BZ, UK

Email:   csa@doc.ic.ac.uk
Fax:    +44 71 589 1552
Phone:  +44 71 589 5111 x5011

     The Prolog Resource Guide (v0.6) was printed in issue 5/1
of the Newsletter (Feb. 1992). This lists information concerning
Prolog Archives, Books, Suppliers, etc.  It is now maintained by
Mark Kantrowitz (Mark.Kantrowitz@GLINDA.OZ.CS.CMU.EDU), and
posted periodically to comp.lang.prolog (see question 3).

     To send in Newsletter contributions, write to:

        Andrew Davison,
        Dept. of Computer Science,
        University of Melbourne,
        Parkville,
        Melbourne, Victoria 3052,
        AUSTRALIA

Email:   ad@cs.mu.oz.au
Fax:    +61 3 348 1184
Phone:  +61 3 344 7207 / 5230
Telex:   AA 35185

			*	*	*

2. Where can I get a public-domain, free Prolog for (the IBM PC,
   the Mac, Unix)?

     The following are anonymous-FTP sites for free Prologs
(or related languages) which are either in the public domain or
are "copy-lefted" (permitted to be copied with some restrictions
on commercial use).

     [Please see Mark Kantrowitz's monthly "Prolog Resource
Guide" posting (see question 3) for information about non-free
implementations.]

     (Please note that for extensive development work, users
will probably want a robust interpreter or compiler with good
debugging facilities and a standard syntax, among other things.
While public-domain systems are a valuable service to the
community, they do not necessarily have all these things, and
users should weigh carefully what they want to do against the
capabilities and costs of the available systems.)

For the IBM PC:
- BinProlog 3.45, anonymous FTP from clement.info.umoncton.ca
  (139.103.16.2), directory BinProlog.  Compiler for 386/486
  machines (DOS + Windows 3.1), R6000.
  E-mail: tarau@info.umoncton.ca (Paul Tarau).
- PIE2, available on CompuServe in the AIEXPERT forum,
  interpreter and examples in PIE2.ZIP, documentation in
  PIEDOC.ZIP.  E-mail: ruggles@shell.com (Brent Ruggles).
- SWI Prolog, anonymous FTP from swi.psy.uva.nl (145.18.114.17),
  directory pub/SWI-Prolog; or from ftp.th-darmstadt.de
  (130.83.55.75), directory pub/programming/languages/prolog.
  Windows application available.  Portable, copy-lefted.
- XSB, system with SLG-resolution, HiLog syntax, and unification
  factoring.  Compiler for many platforms including SunOS, Linux,
  and Windows.  Anonymous FTP from ftp.cs.sunysb.edu (130.245.1.40),
  directory pub/XSB.  E-mail: xsb-contact@cs.sunysb.edu

For the Apple Macintosh:
- LPA MacProlog, demo version, anonymous FTP from
  aisun1.ai.uga.edu, directory ai.prolog; download "Contents" first.
- Open Prolog, anonymous FTP from its home site: ftp.cs.tcd.ie,
  directory pub/languages/open-prolog.
  Also available from sumex-aim.stanford.edu, directory
  info-mac/Development.  E-mail: brady@cs.tcd.ie (Michael Brady).
- TPM (the Transparent Prolog Machine), anonymous FTP from
  hcrl.open.ac.uk, directory /pub/software.  Demo LPA
  MacProlog with the TPM debugger built on top.
- UPMAIL Tricia Prolog, anonymous FTP from ftp.csd.uu.se
  (130.238.12.1), directory pub/Tricia; get README first.
  Email: tricia-request@csd.uu.se.

For Unix systems:
- ALF (Algebraic Logic Functional language), WAM-based language
  with narrowing/rewriting, anonymous FTP from ftp.germany.eu.net,
  directory "pub/programming/languages/LogicFunctional".
  E-mail: opalla@julien.informatik.uni-dortmund.de (Rudolf Opalla).
- Aquarius Prolog 1.0, send message with body "get aquarius-info
  license" to listserv@acal-server.usc.edu.  High performance,
  commercial functionality except debugging and modules.  For
  directory pub/XSB.  E-mail: xsb-contact@cs.sunysb.edu
- Argo Prolog v.1.1, anonymous ftp from ftp.csk.co.jp, directory
  "/pub/CSK/argo_prolog".  Runs on Solaris 1.x and HP-UX 9.x.
  Contact: doi@csk.co.jp (Takao Doi).
- BinProlog 3.45, anonymous FTP from clement.info.umoncton.ca
  (139.103.16.2), directory BinProlog.  Compiler for SPARC
  (SunOS 4.x + Solaris), DEC Alpha, MIPS, NeXT, Sun3.
  E-mail: tarau@info.umoncton.ca (Paul Tarau).
- B-Prolog 2.0, anonymous ftp from ftp.kyutech.ac.jp
  (131.206.1.101), directory pub/Language/prolog. Portable,
  copyrights reserved.  E-mail: zhou@mse.kyutech.ac.jp
- clp(FD), anonymous FTP from ftp.inria.fr, directory
  "/INRIA/Projects/ChLoE/LOGIC_PROGRAMMING/clp_fd".  Constraint
  logic programming over finite domains.  Requires GNU C v.2.4.5
  or higher.  Contact: daniel.diaz!inria.fr (Daniel Diaz).
- CLP(R), available by e-mail request from Joxan Jaffar,
  "joxan@watson.ibm.com".  Constraint logic programming language,
  for academic and research purposes only.
- KLIC, anonymous FTP from ftp.icot.or.jp, file name
  "/ifs/symbolic-proc/unix/klic/klic.tgz".  ICOT Free
  Software.  Concurrent logic programming.  Tested on Sparcs,
  DEC 7000, Gateway P5-60.  Contact: ifs@icot.or.jp
- Mercury v0.5.1, anonymous ftp from turiel.cs.mu.oz.au,
  directory "/pub/mercury".  See http://www.cs.mu.oz.au/mercury.
  Runs on Solaris, SunOS, IRIX 5.x, HPUX, ULTRIX, AIX, Linux, and
  Windows 95.
- Modular SB-Prolog (= SB-Prolog version 3.1 plus modules),
  anonymous FTP from ftp.dcs.ed.ac.uk (129.215.160.5), file
  SPARC, DECstation, MIPS, HP 9000 series, Sun 3.  Copy-lefted.
- SWI Prolog, anonymous FTP from swi.psy.uva.nl (145.18.114.17),
  directory pub/SWI-Prolog; or from ftp.th-darmstadt.de
  (130.83.55.75), directory pub/programming/languages/prolog.
  Portable, copy-lefted.
- wamcc, anonymous FTP from ftp.inria.fr, directory
  "/INRIA/Projects/ChLoE/LOGIC_PROGRAMMING/wamcc".  Compiler which
  translates Prolog to C via WAM.  Debuggers.  Requires GNU C
  v.2.4.5 or higher.  Contact: daniel.diaz!inria.fr (Daniel Diaz).
- XSB, system with SLG-resolution, HiLog syntax, and unification
  factoring.  Compiler for many platforms including SunOS, Linux,
  and Windows.  Anonymous FTP from ftp.cs.sunysb.edu (130.245.1.40),
  pub/dts/mod-prolog.tar.Z .  Interpreter for SPARC.
  E-mail: mprolog@dcs.ed.ac.uk (Brian Paxton).

			*	*	*

3. What commercial systems are available?  What about systems
   available for a price from research institutions?

     Many commercial systems are listed in the periodically
posted Prolog Resource Guide.  The Resource Guide also lists
many systems which are not exactly "commercial", but available
for a price from research instutitions.  The list of such
systems was originally compiled by Chris Moss, of Imperial
College.  The rest of the Resource Guide was originally compiled
by Dag Wahlberg, of Uppsala University.

     The Resource Guide is now maintained by the kind efforts
of Mark Kantrowitz, "Mark.Kantrowitz@GLINDA.OZ.CS.CMU.EDU", who
posts it ON THE 14TH OF EVERY MONTH on comp.lang.prolog.  It is
also available by anonymous FTP from "ftp.cs.cmu.edu"
[128.2.206.173] in the directory
"/afs/cs.cmu.edu/project/ai-repository-3/ai/lang/prolog/faq",
as the files "prg_1.faq" and "prg_2.faq".

     Readers should also note that the Prolog Management Group
(formerly the Prolog Vendors' Group) is contactable
electronically via its Secretary, Steve Cartmell.  His address
is "steve@pap.com".

			*	*	*

4. How do I get in touch with my Prolog's users' group,
   sales representative, or technical support line?

     Here are some e-mail addresses of these contacts, listed
alphabetically by company or major product name.  Please note
that sometimes phoning or writing to the company will get better
response than e-mail.

ALS (Applied Logic Systems): 
  Information:	info@als.com
  Sales:	sales@als.com
  Tech support:	support@als.com

Amzi! inc.:
  Information:	info@amzi.com
  Sales:	sales@amzi.com
  Support:	support@amzi.com

COSYTEC (CHIP V4):
  Information:	cosytec@cosytec.fr
  Support:	help@cosytec.fr

ECLiPSe and Sepia:
  Users' group:	eclipse_users@ecrc.de
  Information:	eclipse_request@ecrc.de
  Tech support:	eclipse_bugs@ecrc.de

Expert Systems Ltd. (Prolog-2):
  Sales:	sales@expert.demon.co.uk
  Support:	support@expert.demon.co.uk
  Users' group:	prolog2-request@hplb.hpl.hp.com

LPA:
  Sales:	lpa@cix.compulink.co.uk
  Tech support:	lpa@cix.compulink.co.uk

PDC Prolog:
  Information:	pdc-request@pdc.dk
  Sales:	sales@pdc.dk
  Tech support:	support@pdc.dk

ProLog by BIM:
  The company is in flux at last report.  Please contact
  bmd@CS.kuleuven.ac.be (Bart Demoen) for more information.

Quintus:
  Users' group:	quintus-users-request@aiil.co.uk
  Sales:	prolog@aiil.co.uk
  Tech support:	support@aiil.co.uk

SICStus:
  Users' group:	sicstus-users-request@sics.se
  Sales:	sicstus-request@sics.se
  Tech support:	sicstus-bug@sics.se

Turbo Prolog:
  Turbo Prolog is the older name for PDC Prolog (see above).

			*	*	*

5. I think language X is better than Prolog.  What do you think?

     These debates rarely result in any productive discussion.
To some extent, one's favourite language is based on irrational
ideology.

     However, many people now agree that different languages are
good for different things.  Prolog seems to be good for problems
in which logic is intimately involved, or whose solutions have a
succinct logical characterization.  Like other interactive,
symbolic languages, Prolog is also good for rapid prototyping.

     Also, please note that there are many different "Prologs"
and other logic programming languages available, all with
different capabilities.

			*	*	*

6. My Prolog prof assigned me this problem.  Can you help
   me with it?

     If your instructor assigned it to you, he or she probably
wanted you to do it yourself.  If it's an introductory Prolog
course, your question might be elementary to most readers, so it
might be a waste of network resources to ask it.  Please ask
your instructor, a friend, a teaching assistant, or a local
newsgroup for help first.

     That being said, there are comp.lang.prolog readers who
would be glad to help people making a legitimate attempt to
learn Prolog.

			*	*	*

7. Can you suggest some books on Prolog?

     The Prolog Resource Guide (see above, question 3) contains
a listing of Prolog books.  It is maintained by Mark Kantrowitz
(Mark.Kantrowitz@GLINDA.OZ.CS.CMU.EDU), and posted periodically
on comp.lang.prolog.

     Here are some of the most popular books on Prolog.

_Programming in Prolog_.  William F. Clocksin and Christopher S.
Mellish.  Springer-Verlag, 1994 (4th ed).  (Introductory.)

_Prolog Programming for Artificial Intelligence_.  Ivan Bratko.
Addison-Wesley, 1990 (2nd ed).  (Introductory.)

_The Art of Prolog:  Advanced Programming Techniques_.  Leon
Sterling and Ehud Shapiro.  MIT Press, 1994 (2nd ed).  (Advanced.)

_The Craft of Prolog_.  Richard A. O'Keefe.  MIT Press, 1990.
(Advanced.)

_Foundations of Logic Programming_.  John Lloyd. 
Springer-Verlag, 1988 (2nd ed).  (Logic programming theory.)

			*	*	*

8. Are there any FTP archive sites for comp.lang.prolog?

     Yes.  As of the latest check, the following archive sites
contain selected recent articles from comp.lang.prolog in the
indicated directories.

"cs.dal.ca": /pub/comp.archives/comp.lang.prolog
"info2.rus.uni-stuttgart.de":
  /pub/comm/news/archive/comp.archives/auto/comp.lang.prolog

     Some other sites contain copies of this FAQ list and the
Prolog Resource Guide (see question 3).  For users with "archie"
access, type "archie comp.lang.prolog" for an up-to-date list of
sites having either archives or the periodic postings.

			*	*	*

9. How can I get a copy of the draft ISO Prolog standard?
   Where can I go for more information about it?

     You can pick up a copy by anonymous FTP from site
"ai.uga.edu", directory "/pub/prolog.standard".  The directory
also contains a summary of the standard, by Michael Covington,
in the "isoprolog" files.  Note that no one at that site can
answer any questions about the standard; it is just an FTP site
for the standard in the USA.

     A copy of Richard O'Keefe's Prolog standard draft from 1984
is available from "ftp.ecrc.de", file /pub/eclipse/std/plstd.doc".

     For more information about the ISO Prolog standard, contact

Roger Scowen 
ISO/IEC JTC1 SC22 WG17 (Prolog) convener, 
DITC/93,  National Physical Laboratory
TEDDINGTON, Middlesex TW11 0LW
UNITED KINGDOM
Tel: +44 81 943 6956
Fax: +44 81 977 7091
E-mail: rss@seg.npl.co.uk

			*	*	*

10. How does the WAM (Warren Abstract Machine) work?  How do I
   write a WAM-based compiler or a WAM emulator?

     Reportedly the best tutorial is Hassan Ait-Kaci's book
_Warren's Abstract Machine: A Tutorial Reconstruction_ (MIT
Press, 1991).  A public-domain WAM emulator, written in C++ by
Herve Touati, is available by anonymous FTP at site
"gatekeeper.dec.com", in directory "pub/plan/prolog/ucb".

			*	*	*

11. Is there a WWW (World Wide Web) page on logic programming?

     Yes, there is one by Jonathan Bowen; the URL is
"http://www.comlab.ox.ac.uk/archive/logic-prog.html".
He invites us to mail him at "bowen@comlab.ox.ac.uk" with any
relevant information for inclusion.

			*	*	*

Acknowledgements

     Thank you to all the people who helped put together the
first version of this FAQ, and everyone who has contributed to
it over the years.  Special thanks to John Dowding for
suggesting a good format for the list, and to Chris Moss, Dag
Wahlberg, and Mark Kantrowitz for their work on the Prolog
Resource Guide.

--Jamie Andrews.
  jamie@cs.sfu.ca

User Contributions:

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


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

Send corrections/additions to the FAQ Maintainer:
jamie@cs.sfu.ca (Jamie Andrews)





Last Update March 27 2014 @ 02:12 PM