Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.prolog > #14300 > unrolled thread

comp.lang.prolog Frequently Asked Questions

Started byMarkus Triska <triska@logic.at>
First post2024-11-16 05:58 +0000
Last post2025-08-06 08:30 +0200
Articles 19 — 2 participants

Back to article view | Back to comp.lang.prolog


Contents

  comp.lang.prolog Frequently Asked Questions Markus Triska <triska@logic.at> - 2024-11-16 05:58 +0000
    Amzi! Retirement: 2026 is only next year (Was: comp.lang.prolog Frequently Asked Questions) Mild Shock <janburse@fastmail.fm> - 2025-07-13 15:11 +0200
      What does the "Red Tape" on Wayback Machine mean? (Was: Amzi! Retirement: 2026 is only next year) Mild Shock <janburse@fastmail.fm> - 2025-07-13 15:14 +0200
        Prolog can keep up with the AI Boom [Forget about CLAM] (Was: What does the "Red Tape" on Wayback Machine mean?) Mild Shock <janburse@fastmail.fm> - 2025-07-13 15:27 +0200
          The cult of CLAM / Clojure rewrite utility (Was: Prolog can keep up with the AI Boom [Forget about CLAM]) Mild Shock <janburse@fastmail.fm> - 2025-07-13 15:43 +0200
            Australian Longest Straight Road in Prolog (Was: Clojure hasn't gained momentum [Martin Odersky 2025 Talk]) Mild Shock <janburse@fastmail.fm> - 2025-07-14 16:11 +0200
              Can CLAM do bidrectional rounding? (Was: Australian Longest Straight Road in Prolog) Mild Shock <janburse@fastmail.fm> - 2025-07-14 16:15 +0200
                Pointed intervals to the rescue [Make CLAM great again] (Was: Can CLAM do bidrectional rounding?) Mild Shock <janburse@fastmail.fm> - 2025-07-15 01:26 +0200
                  Corr. Re: Pointed intervals to the rescue [Make CLAM great again] (Was: Can CLAM do bidrectional rounding?) Mild Shock <janburse@fastmail.fm> - 2025-07-15 01:28 +0200
          Sleepy Joe SWI-Prolog still waiting for a PR (Was: Prolog can keep up with the AI Boom [Forget about CLAM]) Mild Shock <janburse@fastmail.fm> - 2025-11-12 01:26 +0100
            deep preprocessor =\= term_expansion and/or goal_expansion [SWI-Prolog dicts] Mild Shock <janburse@fastmail.fm> - 2025-11-12 02:18 +0100
    There is something like SuperPrologs ? [SWI, ECLiPSe, etc..] (Was: comp.lang.prolog Frequently Asked Questions) Mild Shock <janburse@fastmail.fm> - 2025-07-15 13:24 +0200
      Is ISO itself not simply a dialect? (Was: There is something like SuperPrologs ? [SWI, ECLiPSe, etc..]) Mild Shock <janburse@fastmail.fm> - 2025-07-15 13:26 +0200
        Pet project Prolog-Omnibus I don't have any time (Was: Is ISO itself not simply a dialect?) Mild Shock <janburse@fastmail.fm> - 2025-07-15 13:31 +0200
        ANN: Go Fund Me for ISO Core Standard of Prolog (Re: Is ISO itself not simply a dialect?) Mild Shock <janburse@fastmail.fm> - 2025-10-09 18:10 +0200
          Fuck Around and Find Out : SWI-Prolog Forum [Newline FAFO] (Was: ANN: Go Fund Me for ISO Core Standard of Prolog) Mild Shock <janburse@fastmail.fm> - 2025-10-10 09:36 +0200
            Most Prolog Systems didn't solve it yet [Timer Trash] (Was: Fuck Around and Find Out : SWI-Prolog Forum) Mild Shock <janburse@fastmail.fm> - 2025-10-10 09:48 +0200
              Moron @jp-diegidio clueless about Unicode (UAX#14) [Re: Most Prolog Systems didn't solve it yet [Timer Trash] (Was: Fuck Around and Find Out : SWI-Prolog Forum) Mild Shock <janburse@fastmail.fm> - 2025-10-10 10:22 +0200
      ECliPSe Prolog not a SuperProlog (Was: There is something like SuperPrologs ? [SWI, ECLiPSe, etc..]) Mild Shock <janburse@fastmail.fm> - 2025-08-06 08:30 +0200

#14300 — comp.lang.prolog Frequently Asked Questions

FromMarkus Triska <triska@logic.at>
Date2024-11-16 05:58 +0000
Subjectcomp.lang.prolog Frequently Asked Questions
Message-ID<fda96161124.070004@logic.at>
                 Frequently Asked Questions - comp.lang.prolog

   Last-modified: 2022-02-24
   Last-changes: Update link to tutorial by J.R. Fisher. Geoffrey Churchill.

Markus Triska (Mar. 2 2007 - ... )

Remko Troncon (Jan. 6 2002 - Mar. 2 2007)

Dirk-Jan Faber (Feb. 1 1999 - Jan. 6 2002)

Jamie Andrews (Aug 26 1992 - Oct. 16 1997)
     __________________________________________________________________

     General Information: This article contains the answers to some
     Frequently Asked Questions (FAQ) often seen in
     news://comp.lang.prolog/. It is posted (twice a month, currently on
     the 2nd 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://www.logic.at/prolog/faq/

     Please send questions about the FAQ and updates to
     <triska@logic.at>.

   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 or send in
   contributions, check http://www.cs.nmsu.edu/ALP/ or contact

   Sandro Etalle <etalle@cs.utwente.nl>

   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 used to be
   posted periodically to news://comp.lang.prolog.

   2. Where can I get a free Prolog for system X (PC, Mac, Unix or other)?

   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 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.)

   ALF (Algebraic Logic Functional language)

          + Platforms: UNIX
          + Available: Unknown
          + E-mail: Rudolf Opalla
            <opalla@julien.informatik.uni-dortmund.de>
          + Info: WAM-based language with narrowing/rewriting

   Amzi! Prolog + Logic Server

          + Platforms: Window, Linux and Solaris
          + Available: http://www.amzi.com/download/
          + E-mail: <info@amzi.com>
          + Info: Registration is compulsory, except for the Free
            Academic/Personal/Evaluation License.

   Aquarius Prolog 1.0

          + Platforms: UNIX
          + Available: http://www.info.ucl.ac.be/people/PVR/aquarius.html
          + Info: High performance, commercial functionality except
            debugging and modules.

   Argo Prolog v.1.1

          + Platforms: Solaris 1.x and HP-UX 9.x
          + Available: Unknown
          + Contact: Takao Doi <doi@csk.co.jp>

   Arity/Prolog32

          + Platforms: Win32
          + Available: https://github.com/Peter-Gabel/ArityProlog32
          + Info: Arity/Prolog32 provides a complete Prolog programming
            environment in which you can write, debug, and run Prolog
            programs in 32-bit Windows environments (95/98/NT/2000).
            Arity/Prolog32 is a powerful, highly optimized, and extended
            version of the logic programming language Prolog.
            Arity/Prolog32 is a complete compiler and interpreter written
            in Prolog, C, and Assembly language and is a superset of
            Clocksin and Mellish Prolog.

   B-Prolog 8.1

          + Platforms: Win32, Solaris, SunOS, UNIX, FreeBSD and Linux
          + Available: http://www.probp.com/
          + E-mail: Neng-Fa Zhou <support@probp.com>
          + Info: Free of charge for individual users.

   BinProlog 7.0

          + Platforms: Windows 95/98/NT, Linux and all major Unix
            platforms.
          + Available: https://code.google.com/archive/p/binprolog/
          + Info: Download free evaluation copies and see online demos.
            Inexpensive Educational licensing available.Has built-in
            networking, multi-threading, mobile code and distributed
            blackboards. Supports BinNet Internet Programming Tool kit.

   Brain Aid Prolog (BAP) v1.4

          + Platforms: Transputer systems
          + Info: BAP is a parallel prolog system for Transputer systems.
            Available under a Berkely style of copyright.

   C#Prolog

          + Platforms: Win32, UNIX
          + Available: http://sourceforge.net/projects/cs-prolog/
          + E-mail: John Pool <j.pool@ision.nl>
          + Info: A Prolog interpreter written in C#. Can easily be
            integrated in C# programs. Characteristics: reliable and quite
            fast beta version, command line interface, builtin DCG,
            XML-predicates, persistent predicates (using Firebird RDBMS),
            extendible.

   Ciao 1.4

          + Platforms: Linux, Win32 (95/98/NT), Solaris, SunOS, UNIX in
            general.
          + Available: http://ciao-lang.org
          + E-mail: Developers <ciao@clip.dia.fi.upm.es>, Users
            <ciao-users@clip.dia.fi.upm.es>
          + Info: Next generation LP/CLP system. Commercial functionality,
            but freely available w/source. ISO-Prolog + modules,
            networking, multi-threading, clp(r), clp(q), interfaces (Java,
            C, tcltk, WWW, databases/ODBC, ...), functions, higher-order,
            records, persistence, objects, assertions (types, modes, ...),
            source debugger, auto-documenter, static debugger, and more.

   clp(FD)

          + Platforms: UNIX
          + Contact: Daniel Diaz <daniel.diaz@inria.fr>
          + Info: Constraint logic programming over finite domains.
            Requires GNU C v.2.4.5 or higher.

   clp(FD,S)

          + Platforms: UNIX
          + Contact: Yan Georget <Yan.Georget@inria.fr>
          + Info: Requires GNU C (gcc) version 2.4.5. or higher.

   CLP(R)

          + Platforms: UNIX
          + Available: E-mail request from Joxan Jaffar
            <joxan@watson.ibm.com>.
          + Info: Constraint logic programming language, for academic and
            research purposes only.

   CxProlog

          + Platforms: UNIX, MacOS X, Windows
          + Available: http://ctp.di.fct.unl.pt/~amd/cxprolog/
          + Info: Open source (GPL) implementation supporting Unicode,
            threads, sockets, processes, contexts, imperative data
            structures, and interfaces with C/C++, Java, and wxWidgets
          + Contact: Artur Miguel Dias <amd@fct.unl.pt>

   ECLiPSe Constraint Logic Programming System, subsuming Prolog.

          + Platforms: Solaris, Linux, Linux/Alpha, Mac OS X, Windows
          + Available: http://eclipseclp.org or
            http://www.sourceforge.net/projects/eclipse-clp
          + Info: ECLiPSe is a Prolog and Constraint Programming platform
            with a long history and has been open-source since Sept 2006.
          + License: MPL

   IF Prolog V5.3

          + Platforms: Windows 95/98/NT/2000/XP, Linux, Solaris, AIX,
            HP-UX and other UNIX platforms
          + Available: http://www.ifcomputer.de/Products/Prolog/
          + E-mail: <info@ifcomputer.de>
          + Info: IF Prolog is a commercial Prolog system with interfaces
            to C/C++, Java, sockets, Windows events and a COM servers. A
            graphical debugger allows step-forward, step backward
            debugging of Prolog code. A static module concept allows many
            additional errors to be detected at compile time. Constraint
            Programming (for finite domains, intervals and booleans using
            global constraints and linear optimisation).
          + License: Free evaluation copies and inexpensive educational
            licensing available.

   GNU Prolog

          + Platforms: Many Unixes, Windows, MacOS X
          + Available: http://www.gprolog.org/
          + E-mail: Daniel Diaz <daniel.diaz@inria.fr>

   Jinni 2.27

          + Platforms: Java-based
          + Available: https://github.com/heathmanb/JinniProlog
          + Info: Multi-threaded, Java based Prolog interpreter with
            built-in networking, distributed blackboards and mobile code
            (inexpensive shareware licensing available).

   JIProlog

          + Platforms: Java-based
          + Available: http://www.jiprolog.com/
          + Info: Java Internet Prolog is a cross-platform pure Java 100%
            prolog interpreter that supplies Java world with the power of
            prolog language and provides prolog language with a technology
            to implement new predicates in Java.

   KLIC

          + Platforms: UNIX
          + Info: ICOT Free Software. Concurrent logic programming. Tested
            on Sparcs, DEC 7000, Gateway P5-60.
          + Contact: <ifs@icot.or.jp>

   LPA Win-Prolog, demo version

          + Platforms: Windows
          + Available: Available from http://www.lpa.co.uk/ind_dow.htm

   MINERVA

          + Platforms: Java
          + Info: Proprietary commercial ISO-Prolog Compiler in 100% Java
            support for web programming, XML, servlets, applets,
            standalones. Free evaluation license.

   Modular SB-Prolog (= SB-Prolog version 3.1 plus modules)

          + Platforms: SPARC, DECstation, MIPS, HP 9000 series, Sun 3.
          + Info: Copy-lefted.

   Open Prolog

          + Platforms: Apple Macintosh
          + Available: http://www.cs.tcd.ie/open-prolog/
          + E-mail: <brady@cs.tcd.ie>. (Michael Brady).

   Poplog Prolog

          + Platforms: Various Unixes, including Sun, Dec Alpha, HP and
            many others. Also a Win32 version is available. Sources
            available for other combinations.
          + Available: At the Free Poplog Web/FTP site, including full
            sources
            http://www.cs.bham.ac.uk/research/poplog/freepoplog.html
          + E-mail: queries may be posted to news://comp.lang.pop/, or to
            <pop-forum@cs.bham.ac.uk> or <A.Sloman@cs.bham.ac.uk> (Last
            resort!)
          + Info: Robust incremental compiler, part of the multi-language
            Poplog system (including Common Lisp, Pop-11 and Standard ML).
            Unix, Linux & VMS versions include full support for X window
            facilities/Motif. More information at
            http://www.cs.bham.ac.uk/research/poplog/poplog.info.html
            Licence modelled on XFree86. Can be freely distributed, though
            copyright is owned by Sussex University and ISL.

   PIE2

          + Platforms: Unknown
          + Available: On CompuServe in the AIEXPERT forum, interpreter
            and examples in PIE2.ZIP, documentation in PIEDOC.ZIP.
          + E-mail: Brent Ruggles <ruggles@shell.com>

   QuProlog

          + Platforms: UNIX, Linux, beta for MAC
          + Available:
            http://www.itee.uq.edu.au/~pjr/HomePages/QuPrologHome.html
          + E-mail: <pjr@itee.uq.edu.au>
          + Info: Extended WAM with support for quantifiers and
            substitutions, multi-threaded, high-level communication.

   Scryer Prolog

          + Platforms: Unix, Linux, Windows and Mac
          + Available: https://github.com/mthom/scryer-prolog
          + Info: A modern Prolog system written mostly in Rust.

   Strawberry Prolog

          + Platforms: Windows 95/NT, plans for UNIX and Macintosh
          + Available: http://www.dobrev.com/
          + E-mail: <dimiter@dobrev.com>

   SWI Prolog

          + Platforms: Binaries for Linux, Windows (NT/2000/XP/Vista) and
            Mac OS X (darwin). Sources: ANSI-C, both 32 and 64-bit
            machines, compiles on almost all Unix systems and more.
          + Available: http://www.swi-prolog.org
          + Info: Complete, ISO and Edinburgh standard, common
            optimizations, GC including atoms. Portable graphics, multiple
            threads, constraints, comprehensive libraries for (semantic)
            web programming, Unicode, source-level debugger, advanced
            syntax colouring
          + License: Simplified BSD. Run license/0 for more information.

   Tau Prolog

          + Platforms: Web-based
          + Available: http://tau-prolog.org/
          + Info: An open source Prolog interpreter in JavaScript.

   Trinc-Prolog

          + Platforms: Windows 95/98/NT 4.0, plans for Windows 2000, Linux
            and Sun Solaris
          + E-mail: <info@trinc-prolog.com>

   Visual Prolog

          + Platforms: Win32
          + Available: http://www.visual-prolog.com
          + Info: Includes all the facilities necessary to write mission
            critical commercial-grade applications. Fully visual
            development environment. Open architecture. Object-oriented.
            Built-in database system and ODBC support. Visual Prolog
            Personal Edition is available on a freeware license.

   wamcc

          + Platforms: UNIX
          + Info: Compiler which translates Prolog to C via WAM.
            Debuggers. Requires GNU C v.2.4.5 or higher.
          + Contact: Daniel Diaz <daniel.diaz@inria.fr>

   XGP

          + Platforms: Apple Macintosh OS X, 10.2.3+
          + Available: http://xgp.sourceforge.net/
          + Info: XGP is an open source (GPL) integrated development
            environment with user interface and graphics support based on
            gprolog and Cocoa under Macintosh OS X.

   XSB

          + Platforms: Many, including SunOS, Linux and Windows
          + Available: http://xsb.sourceforge.net/
          + E-mail: <xsb-users@lists.sourceforge.net>
          + Info: system with SLG-resolution, HiLog syntax, and
            unification factoring.

   Yap

          + Platforms: UNIX-based platforms and Windows
          + Available: https://github.com/vscosta/yap-6.3
          + E-mail: Vitor Santos Costa <vsc@ncc.up.pt>
          + Info: Yap is entirely written in C and Prolog and should be
            portable to most 32-bit and 64-bit Unix based platforms. A
            Windows port is also available. Yap4.2 is distributed under
            Perl's artistic license and can be freely distributed.

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

   Many commercial systems are listed in the Prolog Resource Guide. The
   Resource Guide also lists many systems which are not exactly
   "commercial", but available for a price from research institutions. 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 Prolog Resource Guide hasn't been updated lately, but nevertheless
   still contains some valuable information. It can be found at
   http://www-2.cs.cmu.edu/Groups/AI/html/faqs/lang/prolog/prg/top.html.

   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.

   ALS (Applied Logic Systems)

          + Web site: http://alsprolog.com

   Amzi! inc.

          + Web site: http://www.amzi.com
          + Information: <info@amzi.com>
          + Sales: <sales@amzi.com>
          + Support: <support@amzi.com>

   Arity/Prolog32

          + Web site: https://github.com/Peter-Gabel/ArityProlog32

   Ciao, PiLLoW, WebDB, etc.

          + Web site: http://www.clip.dia.fi.upm.es/Software
          + Users' group: <ciao-users@clip.dia.fi.upm.es>
          + Information: <ciao@clip.dia.fi.upm.es>
          + Tech support: <ciao-bugs@clip.dia.fi.upm.es>

   COSYTEC (CHIP V5)

          + Web site: http://www.cosytec.com
          + Information: <info@cosytec.com> (or .fr)
          + Tech Support: <support@cosytec.com> (or .fr)

   ECLiPSe

          + Web site: http://eclipseclp.org
          + Users' group: <eclipse-clp-users@lists.sf.net>
          + Tech support: <http://eclipseclp.org/bugs.html>
          + Support contracts: <info@coninfer.com>

   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>

   GNU Prolog

          + Web site: http://www.gprolog.org/
          + Users' group: <users-prolog-request@gnu.org>
          + Bug reports: <bug-prolog@gnu.org>

   LPA

          + Web site: http://www.lpa.co.uk/
          + Sales: <sales@lpa.co.uk>
          + Tech support: <support@lpa.co.uk>

   MasterProLog

          + Formerly BIM ProLog

   PDC Prolog

          + PDC Prolog is the succesor to Turbo Prolog and the predecessor
            to Visual Prolog.

   ProLog by BIM

          + Currently MasterProLog

   Quintus

          + Web site: http://quintus.sics.se
          + Mailing list: see
            http://www.sics.se/isl/quintuswww/site/community.html
          + Sales: <qpsales@sics.se>
          + Tech support: <qpsupport@sics.se>

   SICStus

          + Web page: http://www.sics.se/sicstus
          + Mailing list: see
            http://www.sics.se/isl/sicstuswww/site/community.html
          + Sales: <sicstus-request@sics.se>
          + Tech support: <sicstus-support@sics.se>

   Trinc / Trinc-Prolog

          + Information: <info@trinc-prolog.com>
          + Sales: <sales@trinc-prolog.com>
          + Support: <support@trinc-prolog.com>

   Turbo Prolog

          + Turbo Prolog is the predecessor of PDC Prolog (see above).

   Visual Prolog

          + Web site: http://www.visual-prolog.com/
          + Information: <sales@pdc.dk> (or <sales@visual-prolog.com>)
          + Sales: <sales@pdc.dk> (or <sales@visual-prolog.com>)
          + Tech support: <support@pdc.dk> (or
            <support@visual-prolog.com>)

   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, note that there are many different "Prologs" and other logic
   programming languages available, all with different capabilities.

   6. What are the recent developments?

   There are some languages in development which do not have Prolog
   syntax, but do subsume and generalize Prolog's logic programming
   abilities.

   Mercury

          + Web site: http://www.mercury.cs.mu.oz.au/index.html

   The Mozart Consortium:

          + Web site: http://mozart.github.io/
          + Mailing lists: <http://mozart.github.io/mailing-lists/>

   Some other languages bring new developments while also supporting
   Prolog syntax and functionality as an option:

   Ciao

          + Web site: http://www.clip.dia.fi.upm.es/Software
          + Users' group: <ciao-users@clip.dia.fi.upm.es>
          + Information: <ciao@clip.dia.fi.upm.es>
          + Tech support: <ciao-bugs@clip.dia.fi.upm.es>

   Logtalk

          + Web site: http://logtalk.org/
          + E-mail: Paulo Moura <pmoura@logtalk.org>
          + Info: Open source object-oriented extension to Prolog
            compatible with most Prolog compilers.

   7. 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 news://comp.lang.prolog/ readers who would
   be glad to help people making a legitimate attempt to learn Prolog.

   8. Can you suggest some books on Prolog?

   The Prolog Resource Guide (see above) contains a listing of Prolog
   books. It is maintained by Mark Kantrowitz
   (<Mark.Kantrowitz@glinda.oz.cs.cmu.edu>), and posted periodically on
   news://comp.lang.prolog.

   Here are some of the most popular books on Prolog.

   Introductory

          + "Programming In Prolog". William F. Clocksin and Christopher
            S. Mellish. Springer-Verlag, 2003 (5th ed).
          + "Prolog for Programmers". Feliks Kluzniak and Stanislaw
            Szpakowicz. Academic Press, London, 1985, now available
            without charge from
            https://sites.google.com/site/prologforprogrammers/
          + "Prolog Programming for Artificial Intelligence". Ivan Bratko.
            Addison-Wesley, 2001 (3rd ed).

   Advanced

          + "The Art of Prolog: Advanced Programming Techniques". Leon
            Sterling and Ehud Shapiro. MIT Press, 1994 (2nd ed).
          + "The Craft of Prolog". Richard A. O'Keefe. MIT Press, 1990.

   Logic programming theory

          + "Foundations of Logic Programming". John Lloyd.
            Springer-Verlag, 1988 (2nd ed).
          + "Logic, Programming and Prolog". Ulf Nilsson and Jan
            Maluszynski. Originally published by John Wiley & Sons Ltd
            (2nd ed. 1995) and now available without charge from
            http://www.ida.liu.se/~ulfni/lpp

   Expert Systems

          + "Building Expert Systems in Prolog". Dennis Merritt.
            Springer-Verlag, 1989. HTML & PDF versions available from
            http://www.amzi.com/ExpertSystemsInProlog

   9. Are there any WWW archives of comp.lang.prolog ?

   Yes, there are: Google Groups has archives of news://comp.lang.prolog/.
   They can be found at
   https://groups.google.com/forum/#!forum/comp.lang.prolog

   10. How can I get the ISO Prolog standard? Where can I go for more
   information about it?

   You can obtain the approved international standards from your national
   member body or directly from ISO (http://www.iso.org).

   The working group on Prolog standardisation is ISO/IEC JTC1/SC22/WG17
   (http://www.sju.edu/~jhodgson/wg17/).

   Contacts:

          + Convenor of WG17: Ulrich Neumerkel
            (<ulrich@mips.complang.tuwien.ac.at>)

   Further literature: "Prolog: The Standard (Reference manual)", P.
   Deransart, A. Ed-Dbali, L. Cervoni, Springer Verlag (1996). Extra
   information can be found on
   http://pauillac.inria.fr/~deransar/prolog/docs.html

   http://www-2.cs.cmu.edu/afs/cs.cmu.edu/project/ai-repository/ai/lang/pr
   olog/doc/standard/ contains the December 1991 draft, the March 1993
   draft, Michael Covington's summary of it, and Richard O'Keefe's 1984
   Prolog standard draft.

   http://www.complang.tuwien.ac.at/ulrich/iso-prolog/ ISO Prolog works
   and related material by the convenor of WG17.

   For questions about the standard, use this newsgroup or Stackoverflow.

   11. 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). The
   book is out of print, and available online at
   http://wambook.sourceforge.net.

   12. Is there a WWW page on logic programming?

   Yes, there is one by Jonathan Bowen; the URL is
   http://www.afm.sbu.ac.uk/logic-prog/. He invites us to mail him at
   <jonathan.bowen@sbu.ac.uk> with any relevant information for inclusion.

   A collection of artifacts from logic programming languages beginning
   with Marseille Prolog is available from
   http://www.softwarepreservation.org/projects/prolog/index.html

   A large amount of Prolog code is available from the CMU AI Repository:
   http://www.cs.cmu.edu/afs/cs/project/ai-repository/ai/lang/prolog/0.htm
   l

   Recently, Stackoverflow has become a valuable resource for Prolog
   questions and answers: http://stackoverflow.com/questions/tagged/prolog

   Another community resource is the #prolog IRC channel on
   irc.libera.chat.

   13. Can I do Internet/WWW programming with Prolog?

   Prolog is very suitable for this task. Several commercial and free
   implementations include special support for it. A page specifically on
   this topic (including some tutorials) is maintained at
   http://www.clip.dia.fi.upm.es/lpnet/lpnet.html. A public-domain library
   exists (PiLLoW) for several popular Prolog systems which helps in the
   task. See: http://www.clip.dia.fi.upm.es/Software/pillow/

   14. Is there a WWW page with some tutorials on Prolog?

   Beginner level:

          + Adventure in Prolog:
            http://www.amzi.com/AdventureInProlog/advfrtop.htm
          + On-line guide to Prolog Programming:
            http://kti.ms.mff.cuni.cz/~bartak/prolog/index.html
          + Prolog Programming, A First Course:
            http://computing.unn.ac.uk/staff/cgpb4/prologbook/book.html
          + Learn Prolog Now!: http://www.learnprolognow.org

   Intermediate to advanced level:

          + https://skolemmachines.org/ThePrologTutorial/

   15. How do I edit Prolog code?

   Emacs and VIM ship with basic support for Prolog. A much improved Emacs
   mode is maintained by Stefan Bruda and available from
   https://bruda.ca/emacs/prolog_mode_for_emacs

   Logtalk ships with various editing services for many common editors,
   also usable for Prolog.

   SWI Prolog has a built-in Emacs clone called PceEmacs. There are also
   Emacs definitions that let you evaluate embedded queries:
   https://www.metalevel.at/ediprolog/. An SWI Prolog programming
   environment suitable for schools is available from
   http://lernen.bildung.hessen.de/informatik/swiprolog/indexe.htm

   A Prolog plug-in for the "Eclipse"-IDE is available from:
   http://eclipse.ime.usp.br/projetos/grad/plugin-prolog/index.html

   A sophisticated integrated editing and teaching environment with
   declarative debugging, termination analysis and many visualisations is
   available from http://www.complang.tuwien.ac.at/ulrich/gupu/

   16. How do I publish Prolog code?

   Logtalk ships with support for various syntax highlighters, also usable
   for Prolog. These include support for Pygments (used e.g. on Trac and
   GitHub), Rouge (use e.g. in GitLab), GeSHi (used e.g. on Wikis), minted
   and texments LaTeX packages (e.g. source code listings), Google Code
   Prettify, Source-highlight, Highlight, SyntaxHighlighter, and SHJS
   (JavaScript highlighter for e.g. web pages).

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.

   Special thanks to Jamie Andrews, Dirk-Jan Faber and Remko Troncon, who
   have been maintaining and posting the FAQ in the past.

[toc] | [next] | [standalone]


#14652 — Amzi! Retirement: 2026 is only next year (Was: comp.lang.prolog Frequently Asked Questions)

FromMild Shock <janburse@fastmail.fm>
Date2025-07-13 15:11 +0200
SubjectAmzi! Retirement: 2026 is only next year (Was: comp.lang.prolog Frequently Asked Questions)
Message-ID<1050b9t$26p2f$1@solani.org>
In reply to#14300
Amzi! Prolog just tells me:

This Web site will be closing on 6/19/2026.
Dennis Merritt is finally retiring!

https://www.amzi.com/

And here he writes:

I used to earn my living writing and selling software.
My company was AmziLogic LLC, and sold Prolog
and Prolog-based software.

https://denniscmerritt.com/amzi-inc/

So who is the benevolent Software-Escrow. Problem
is even if there are lovely Prolog books from Amzi!
The world might tick differently now,

USA in strong competition over AI with China,
AGI already nocking on the door.

Markus Triska schrieb:
>                   Frequently Asked Questions - comp.lang.prolog
> 
>     Last-modified: 2022-02-24
>     Last-changes: Update link to tutorial by J.R. Fisher. Geoffrey Churchill.
> 
> Markus Triska (Mar. 2 2007 - ... )
> 
> Remko Troncon (Jan. 6 2002 - Mar. 2 2007)
> 
> Dirk-Jan Faber (Feb. 1 1999 - Jan. 6 2002)
> 
> Jamie Andrews (Aug 26 1992 - Oct. 16 1997)
>       __________________________________________________________________
> 
>       General Information: This article contains the answers to some
>       Frequently Asked Questions (FAQ) often seen in
>       news://comp.lang.prolog/. It is posted (twice a month, currently on
>       the 2nd 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://www.logic.at/prolog/faq/
> 
>       Please send questions about the FAQ and updates to
>       <triska@logic.at>.
> 
>     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 or send in
>     contributions, check http://www.cs.nmsu.edu/ALP/ or contact
> 
>     Sandro Etalle <etalle@cs.utwente.nl>
> 
>     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 used to be
>     posted periodically to news://comp.lang.prolog.
> 
>     2. Where can I get a free Prolog for system X (PC, Mac, Unix or other)?
> 
>     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 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.)
> 
>     ALF (Algebraic Logic Functional language)
> 
>            + Platforms: UNIX
>            + Available: Unknown
>            + E-mail: Rudolf Opalla
>              <opalla@julien.informatik.uni-dortmund.de>
>            + Info: WAM-based language with narrowing/rewriting
> 
>     Amzi! Prolog + Logic Server
> 
>            + Platforms: Window, Linux and Solaris
>            + Available: http://www.amzi.com/download/
>            + E-mail: <info@amzi.com>
>            + Info: Registration is compulsory, except for the Free
>              Academic/Personal/Evaluation License.
> 
>     Aquarius Prolog 1.0
> 
>            + Platforms: UNIX
>            + Available: http://www.info.ucl.ac.be/people/PVR/aquarius.html
>            + Info: High performance, commercial functionality except
>              debugging and modules.
> 
>     Argo Prolog v.1.1
> 
>            + Platforms: Solaris 1.x and HP-UX 9.x
>            + Available: Unknown
>            + Contact: Takao Doi <doi@csk.co.jp>
> 
>     Arity/Prolog32
> 
>            + Platforms: Win32
>            + Available: https://github.com/Peter-Gabel/ArityProlog32
>            + Info: Arity/Prolog32 provides a complete Prolog programming
>              environment in which you can write, debug, and run Prolog
>              programs in 32-bit Windows environments (95/98/NT/2000).
>              Arity/Prolog32 is a powerful, highly optimized, and extended
>              version of the logic programming language Prolog.
>              Arity/Prolog32 is a complete compiler and interpreter written
>              in Prolog, C, and Assembly language and is a superset of
>              Clocksin and Mellish Prolog.
> 
>     B-Prolog 8.1
> 
>            + Platforms: Win32, Solaris, SunOS, UNIX, FreeBSD and Linux
>            + Available: http://www.probp.com/
>            + E-mail: Neng-Fa Zhou <support@probp.com>
>            + Info: Free of charge for individual users.
> 
>     BinProlog 7.0
> 
>            + Platforms: Windows 95/98/NT, Linux and all major Unix
>              platforms.
>            + Available: https://code.google.com/archive/p/binprolog/
>            + Info: Download free evaluation copies and see online demos.
>              Inexpensive Educational licensing available.Has built-in
>              networking, multi-threading, mobile code and distributed
>              blackboards. Supports BinNet Internet Programming Tool kit.
> 
>     Brain Aid Prolog (BAP) v1.4
> 
>            + Platforms: Transputer systems
>            + Info: BAP is a parallel prolog system for Transputer systems.
>              Available under a Berkely style of copyright.
> 
>     C#Prolog
> 
>            + Platforms: Win32, UNIX
>            + Available: http://sourceforge.net/projects/cs-prolog/
>            + E-mail: John Pool <j.pool@ision.nl>
>            + Info: A Prolog interpreter written in C#. Can easily be
>              integrated in C# programs. Characteristics: reliable and quite
>              fast beta version, command line interface, builtin DCG,
>              XML-predicates, persistent predicates (using Firebird RDBMS),
>              extendible.
> 
>     Ciao 1.4
> 
>            + Platforms: Linux, Win32 (95/98/NT), Solaris, SunOS, UNIX in
>              general.
>            + Available: http://ciao-lang.org
>            + E-mail: Developers <ciao@clip.dia.fi.upm.es>, Users
>              <ciao-users@clip.dia.fi.upm.es>
>            + Info: Next generation LP/CLP system. Commercial functionality,
>              but freely available w/source. ISO-Prolog + modules,
>              networking, multi-threading, clp(r), clp(q), interfaces (Java,
>              C, tcltk, WWW, databases/ODBC, ...), functions, higher-order,
>              records, persistence, objects, assertions (types, modes, ...),
>              source debugger, auto-documenter, static debugger, and more.
> 
>     clp(FD)
> 
>            + Platforms: UNIX
>            + Contact: Daniel Diaz <daniel.diaz@inria.fr>
>            + Info: Constraint logic programming over finite domains.
>              Requires GNU C v.2.4.5 or higher.
> 
>     clp(FD,S)
> 
>            + Platforms: UNIX
>            + Contact: Yan Georget <Yan.Georget@inria.fr>
>            + Info: Requires GNU C (gcc) version 2.4.5. or higher.
> 
>     CLP(R)
> 
>            + Platforms: UNIX
>            + Available: E-mail request from Joxan Jaffar
>              <joxan@watson.ibm.com>.
>            + Info: Constraint logic programming language, for academic and
>              research purposes only.
> 
>     CxProlog
> 
>            + Platforms: UNIX, MacOS X, Windows
>            + Available: http://ctp.di.fct.unl.pt/~amd/cxprolog/
>            + Info: Open source (GPL) implementation supporting Unicode,
>              threads, sockets, processes, contexts, imperative data
>              structures, and interfaces with C/C++, Java, and wxWidgets
>            + Contact: Artur Miguel Dias <amd@fct.unl.pt>
> 
>     ECLiPSe Constraint Logic Programming System, subsuming Prolog.
> 
>            + Platforms: Solaris, Linux, Linux/Alpha, Mac OS X, Windows
>            + Available: http://eclipseclp.org or
>              http://www.sourceforge.net/projects/eclipse-clp
>            + Info: ECLiPSe is a Prolog and Constraint Programming platform
>              with a long history and has been open-source since Sept 2006.
>            + License: MPL
> 
>     IF Prolog V5.3
> 
>            + Platforms: Windows 95/98/NT/2000/XP, Linux, Solaris, AIX,
>              HP-UX and other UNIX platforms
>            + Available: http://www.ifcomputer.de/Products/Prolog/
>            + E-mail: <info@ifcomputer.de>
>            + Info: IF Prolog is a commercial Prolog system with interfaces
>              to C/C++, Java, sockets, Windows events and a COM servers. A
>              graphical debugger allows step-forward, step backward
>              debugging of Prolog code. A static module concept allows many
>              additional errors to be detected at compile time. Constraint
>              Programming (for finite domains, intervals and booleans using
>              global constraints and linear optimisation).
>            + License: Free evaluation copies and inexpensive educational
>              licensing available.
> 
>     GNU Prolog
> 
>            + Platforms: Many Unixes, Windows, MacOS X
>            + Available: http://www.gprolog.org/
>            + E-mail: Daniel Diaz <daniel.diaz@inria.fr>
> 
>     Jinni 2.27
> 
>            + Platforms: Java-based
>            + Available: https://github.com/heathmanb/JinniProlog
>            + Info: Multi-threaded, Java based Prolog interpreter with
>              built-in networking, distributed blackboards and mobile code
>              (inexpensive shareware licensing available).
> 
>     JIProlog
> 
>            + Platforms: Java-based
>            + Available: http://www.jiprolog.com/
>            + Info: Java Internet Prolog is a cross-platform pure Java 100%
>              prolog interpreter that supplies Java world with the power of
>              prolog language and provides prolog language with a technology
>              to implement new predicates in Java.
> 
>     KLIC
> 
>            + Platforms: UNIX
>            + Info: ICOT Free Software. Concurrent logic programming. Tested
>              on Sparcs, DEC 7000, Gateway P5-60.
>            + Contact: <ifs@icot.or.jp>
> 
>     LPA Win-Prolog, demo version
> 
>            + Platforms: Windows
>            + Available: Available from http://www.lpa.co.uk/ind_dow.htm
> 
>     MINERVA
> 
>            + Platforms: Java
>            + Info: Proprietary commercial ISO-Prolog Compiler in 100% Java
>              support for web programming, XML, servlets, applets,
>              standalones. Free evaluation license.
> 
>     Modular SB-Prolog (= SB-Prolog version 3.1 plus modules)
> 
>            + Platforms: SPARC, DECstation, MIPS, HP 9000 series, Sun 3.
>            + Info: Copy-lefted.
> 
>     Open Prolog
> 
>            + Platforms: Apple Macintosh
>            + Available: http://www.cs.tcd.ie/open-prolog/
>            + E-mail: <brady@cs.tcd.ie>. (Michael Brady).
> 
>     Poplog Prolog
> 
>            + Platforms: Various Unixes, including Sun, Dec Alpha, HP and
>              many others. Also a Win32 version is available. Sources
>              available for other combinations.
>            + Available: At the Free Poplog Web/FTP site, including full
>              sources
>              http://www.cs.bham.ac.uk/research/poplog/freepoplog.html
>            + E-mail: queries may be posted to news://comp.lang.pop/, or to
>              <pop-forum@cs.bham.ac.uk> or <A.Sloman@cs.bham.ac.uk> (Last
>              resort!)
>            + Info: Robust incremental compiler, part of the multi-language
>              Poplog system (including Common Lisp, Pop-11 and Standard ML).
>              Unix, Linux & VMS versions include full support for X window
>              facilities/Motif. More information at
>              http://www.cs.bham.ac.uk/research/poplog/poplog.info.html
>              Licence modelled on XFree86. Can be freely distributed, though
>              copyright is owned by Sussex University and ISL.
> 
>     PIE2
> 
>            + Platforms: Unknown
>            + Available: On CompuServe in the AIEXPERT forum, interpreter
>              and examples in PIE2.ZIP, documentation in PIEDOC.ZIP.
>            + E-mail: Brent Ruggles <ruggles@shell.com>
> 
>     QuProlog
> 
>            + Platforms: UNIX, Linux, beta for MAC
>            + Available:
>              http://www.itee.uq.edu.au/~pjr/HomePages/QuPrologHome.html
>            + E-mail: <pjr@itee.uq.edu.au>
>            + Info: Extended WAM with support for quantifiers and
>              substitutions, multi-threaded, high-level communication.
> 
>     Scryer Prolog
> 
>            + Platforms: Unix, Linux, Windows and Mac
>            + Available: https://github.com/mthom/scryer-prolog
>            + Info: A modern Prolog system written mostly in Rust.
> 
>     Strawberry Prolog
> 
>            + Platforms: Windows 95/NT, plans for UNIX and Macintosh
>            + Available: http://www.dobrev.com/
>            + E-mail: <dimiter@dobrev.com>
> 
>     SWI Prolog
> 
>            + Platforms: Binaries for Linux, Windows (NT/2000/XP/Vista) and
>              Mac OS X (darwin). Sources: ANSI-C, both 32 and 64-bit
>              machines, compiles on almost all Unix systems and more.
>            + Available: http://www.swi-prolog.org
>            + Info: Complete, ISO and Edinburgh standard, common
>              optimizations, GC including atoms. Portable graphics, multiple
>              threads, constraints, comprehensive libraries for (semantic)
>              web programming, Unicode, source-level debugger, advanced
>              syntax colouring
>            + License: Simplified BSD. Run license/0 for more information.
> 
>     Tau Prolog
> 
>            + Platforms: Web-based
>            + Available: http://tau-prolog.org/
>            + Info: An open source Prolog interpreter in JavaScript.
> 
>     Trinc-Prolog
> 
>            + Platforms: Windows 95/98/NT 4.0, plans for Windows 2000, Linux
>              and Sun Solaris
>            + E-mail: <info@trinc-prolog.com>
> 
>     Visual Prolog
> 
>            + Platforms: Win32
>            + Available: http://www.visual-prolog.com
>            + Info: Includes all the facilities necessary to write mission
>              critical commercial-grade applications. Fully visual
>              development environment. Open architecture. Object-oriented.
>              Built-in database system and ODBC support. Visual Prolog
>              Personal Edition is available on a freeware license.
> 
>     wamcc
> 
>            + Platforms: UNIX
>            + Info: Compiler which translates Prolog to C via WAM.
>              Debuggers. Requires GNU C v.2.4.5 or higher.
>            + Contact: Daniel Diaz <daniel.diaz@inria.fr>
> 
>     XGP
> 
>            + Platforms: Apple Macintosh OS X, 10.2.3+
>            + Available: http://xgp.sourceforge.net/
>            + Info: XGP is an open source (GPL) integrated development
>              environment with user interface and graphics support based on
>              gprolog and Cocoa under Macintosh OS X.
> 
>     XSB
> 
>            + Platforms: Many, including SunOS, Linux and Windows
>            + Available: http://xsb.sourceforge.net/
>            + E-mail: <xsb-users@lists.sourceforge.net>
>            + Info: system with SLG-resolution, HiLog syntax, and
>              unification factoring.
> 
>     Yap
> 
>            + Platforms: UNIX-based platforms and Windows
>            + Available: https://github.com/vscosta/yap-6.3
>            + E-mail: Vitor Santos Costa <vsc@ncc.up.pt>
>            + Info: Yap is entirely written in C and Prolog and should be
>              portable to most 32-bit and 64-bit Unix based platforms. A
>              Windows port is also available. Yap4.2 is distributed under
>              Perl's artistic license and can be freely distributed.
> 
>     3. What commercial systems are available? What about systems available
>     for a price from research institutions?
> 
>     Many commercial systems are listed in the Prolog Resource Guide. The
>     Resource Guide also lists many systems which are not exactly
>     "commercial", but available for a price from research institutions. 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 Prolog Resource Guide hasn't been updated lately, but nevertheless
>     still contains some valuable information. It can be found at
>     http://www-2.cs.cmu.edu/Groups/AI/html/faqs/lang/prolog/prg/top.html.
> 
>     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.
> 
>     ALS (Applied Logic Systems)
> 
>            + Web site: http://alsprolog.com
> 
>     Amzi! inc.
> 
>            + Web site: http://www.amzi.com
>            + Information: <info@amzi.com>
>            + Sales: <sales@amzi.com>
>            + Support: <support@amzi.com>
> 
>     Arity/Prolog32
> 
>            + Web site: https://github.com/Peter-Gabel/ArityProlog32
> 
>     Ciao, PiLLoW, WebDB, etc.
> 
>            + Web site: http://www.clip.dia.fi.upm.es/Software
>            + Users' group: <ciao-users@clip.dia.fi.upm.es>
>            + Information: <ciao@clip.dia.fi.upm.es>
>            + Tech support: <ciao-bugs@clip.dia.fi.upm.es>
> 
>     COSYTEC (CHIP V5)
> 
>            + Web site: http://www.cosytec.com
>            + Information: <info@cosytec.com> (or .fr)
>            + Tech Support: <support@cosytec.com> (or .fr)
> 
>     ECLiPSe
> 
>            + Web site: http://eclipseclp.org
>            + Users' group: <eclipse-clp-users@lists.sf.net>
>            + Tech support: <http://eclipseclp.org/bugs.html>
>            + Support contracts: <info@coninfer.com>
> 
>     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>
> 
>     GNU Prolog
> 
>            + Web site: http://www.gprolog.org/
>            + Users' group: <users-prolog-request@gnu.org>
>            + Bug reports: <bug-prolog@gnu.org>
> 
>     LPA
> 
>            + Web site: http://www.lpa.co.uk/
>            + Sales: <sales@lpa.co.uk>
>            + Tech support: <support@lpa.co.uk>
> 
>     MasterProLog
> 
>            + Formerly BIM ProLog
> 
>     PDC Prolog
> 
>            + PDC Prolog is the succesor to Turbo Prolog and the predecessor
>              to Visual Prolog.
> 
>     ProLog by BIM
> 
>            + Currently MasterProLog
> 
>     Quintus
> 
>            + Web site: http://quintus.sics.se
>            + Mailing list: see
>              http://www.sics.se/isl/quintuswww/site/community.html
>            + Sales: <qpsales@sics.se>
>            + Tech support: <qpsupport@sics.se>
> 
>     SICStus
> 
>            + Web page: http://www.sics.se/sicstus
>            + Mailing list: see
>              http://www.sics.se/isl/sicstuswww/site/community.html
>            + Sales: <sicstus-request@sics.se>
>            + Tech support: <sicstus-support@sics.se>
> 
>     Trinc / Trinc-Prolog
> 
>            + Information: <info@trinc-prolog.com>
>            + Sales: <sales@trinc-prolog.com>
>            + Support: <support@trinc-prolog.com>
> 
>     Turbo Prolog
> 
>            + Turbo Prolog is the predecessor of PDC Prolog (see above).
> 
>     Visual Prolog
> 
>            + Web site: http://www.visual-prolog.com/
>            + Information: <sales@pdc.dk> (or <sales@visual-prolog.com>)
>            + Sales: <sales@pdc.dk> (or <sales@visual-prolog.com>)
>            + Tech support: <support@pdc.dk> (or
>              <support@visual-prolog.com>)
> 
>     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, note that there are many different "Prologs" and other logic
>     programming languages available, all with different capabilities.
> 
>     6. What are the recent developments?
> 
>     There are some languages in development which do not have Prolog
>     syntax, but do subsume and generalize Prolog's logic programming
>     abilities.
> 
>     Mercury
> 
>            + Web site: http://www.mercury.cs.mu.oz.au/index.html
> 
>     The Mozart Consortium:
> 
>            + Web site: http://mozart.github.io/
>            + Mailing lists: <http://mozart.github.io/mailing-lists/>
> 
>     Some other languages bring new developments while also supporting
>     Prolog syntax and functionality as an option:
> 
>     Ciao
> 
>            + Web site: http://www.clip.dia.fi.upm.es/Software
>            + Users' group: <ciao-users@clip.dia.fi.upm.es>
>            + Information: <ciao@clip.dia.fi.upm.es>
>            + Tech support: <ciao-bugs@clip.dia.fi.upm.es>
> 
>     Logtalk
> 
>            + Web site: http://logtalk.org/
>            + E-mail: Paulo Moura <pmoura@logtalk.org>
>            + Info: Open source object-oriented extension to Prolog
>              compatible with most Prolog compilers.
> 
>     7. 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 news://comp.lang.prolog/ readers who would
>     be glad to help people making a legitimate attempt to learn Prolog.
> 
>     8. Can you suggest some books on Prolog?
> 
>     The Prolog Resource Guide (see above) contains a listing of Prolog
>     books. It is maintained by Mark Kantrowitz
>     (<Mark.Kantrowitz@glinda.oz.cs.cmu.edu>), and posted periodically on
>     news://comp.lang.prolog.
> 
>     Here are some of the most popular books on Prolog.
> 
>     Introductory
> 
>            + "Programming In Prolog". William F. Clocksin and Christopher
>              S. Mellish. Springer-Verlag, 2003 (5th ed).
>            + "Prolog for Programmers". Feliks Kluzniak and Stanislaw
>              Szpakowicz. Academic Press, London, 1985, now available
>              without charge from
>              https://sites.google.com/site/prologforprogrammers/
>            + "Prolog Programming for Artificial Intelligence". Ivan Bratko.
>              Addison-Wesley, 2001 (3rd ed).
> 
>     Advanced
> 
>            + "The Art of Prolog: Advanced Programming Techniques". Leon
>              Sterling and Ehud Shapiro. MIT Press, 1994 (2nd ed).
>            + "The Craft of Prolog". Richard A. O'Keefe. MIT Press, 1990.
> 
>     Logic programming theory
> 
>            + "Foundations of Logic Programming". John Lloyd.
>              Springer-Verlag, 1988 (2nd ed).
>            + "Logic, Programming and Prolog". Ulf Nilsson and Jan
>              Maluszynski. Originally published by John Wiley & Sons Ltd
>              (2nd ed. 1995) and now available without charge from
>              http://www.ida.liu.se/~ulfni/lpp
> 
>     Expert Systems
> 
>            + "Building Expert Systems in Prolog". Dennis Merritt.
>              Springer-Verlag, 1989. HTML & PDF versions available from
>              http://www.amzi.com/ExpertSystemsInProlog
> 
>     9. Are there any WWW archives of comp.lang.prolog ?
> 
>     Yes, there are: Google Groups has archives of news://comp.lang.prolog/.
>     They can be found at
>     https://groups.google.com/forum/#!forum/comp.lang.prolog
> 
>     10. How can I get the ISO Prolog standard? Where can I go for more
>     information about it?
> 
>     You can obtain the approved international standards from your national
>     member body or directly from ISO (http://www.iso.org).
> 
>     The working group on Prolog standardisation is ISO/IEC JTC1/SC22/WG17
>     (http://www.sju.edu/~jhodgson/wg17/).
> 
>     Contacts:
> 
>            + Convenor of WG17: Ulrich Neumerkel
>              (<ulrich@mips.complang.tuwien.ac.at>)
> 
>     Further literature: "Prolog: The Standard (Reference manual)", P.
>     Deransart, A. Ed-Dbali, L. Cervoni, Springer Verlag (1996). Extra
>     information can be found on
>     http://pauillac.inria.fr/~deransar/prolog/docs.html
> 
>     http://www-2.cs.cmu.edu/afs/cs.cmu.edu/project/ai-repository/ai/lang/pr
>     olog/doc/standard/ contains the December 1991 draft, the March 1993
>     draft, Michael Covington's summary of it, and Richard O'Keefe's 1984
>     Prolog standard draft.
> 
>     http://www.complang.tuwien.ac.at/ulrich/iso-prolog/ ISO Prolog works
>     and related material by the convenor of WG17.
> 
>     For questions about the standard, use this newsgroup or Stackoverflow.
> 
>     11. 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). The
>     book is out of print, and available online at
>     http://wambook.sourceforge.net.
> 
>     12. Is there a WWW page on logic programming?
> 
>     Yes, there is one by Jonathan Bowen; the URL is
>     http://www.afm.sbu.ac.uk/logic-prog/. He invites us to mail him at
>     <jonathan.bowen@sbu.ac.uk> with any relevant information for inclusion.
> 
>     A collection of artifacts from logic programming languages beginning
>     with Marseille Prolog is available from
>     http://www.softwarepreservation.org/projects/prolog/index.html
> 
>     A large amount of Prolog code is available from the CMU AI Repository:
>     http://www.cs.cmu.edu/afs/cs/project/ai-repository/ai/lang/prolog/0.htm
>     l
> 
>     Recently, Stackoverflow has become a valuable resource for Prolog
>     questions and answers: http://stackoverflow.com/questions/tagged/prolog
> 
>     Another community resource is the #prolog IRC channel on
>     irc.libera.chat.
> 
>     13. Can I do Internet/WWW programming with Prolog?
> 
>     Prolog is very suitable for this task. Several commercial and free
>     implementations include special support for it. A page specifically on
>     this topic (including some tutorials) is maintained at
>     http://www.clip.dia.fi.upm.es/lpnet/lpnet.html. A public-domain library
>     exists (PiLLoW) for several popular Prolog systems which helps in the
>     task. See: http://www.clip.dia.fi.upm.es/Software/pillow/
> 
>     14. Is there a WWW page with some tutorials on Prolog?
> 
>     Beginner level:
> 
>            + Adventure in Prolog:
>              http://www.amzi.com/AdventureInProlog/advfrtop.htm
>            + On-line guide to Prolog Programming:
>              http://kti.ms.mff.cuni.cz/~bartak/prolog/index.html
>            + Prolog Programming, A First Course:
>              http://computing.unn.ac.uk/staff/cgpb4/prologbook/book.html
>            + Learn Prolog Now!: http://www.learnprolognow.org
> 
>     Intermediate to advanced level:
> 
>            + https://skolemmachines.org/ThePrologTutorial/
> 
>     15. How do I edit Prolog code?
> 
>     Emacs and VIM ship with basic support for Prolog. A much improved Emacs
>     mode is maintained by Stefan Bruda and available from
>     https://bruda.ca/emacs/prolog_mode_for_emacs
> 
>     Logtalk ships with various editing services for many common editors,
>     also usable for Prolog.
> 
>     SWI Prolog has a built-in Emacs clone called PceEmacs. There are also
>     Emacs definitions that let you evaluate embedded queries:
>     https://www.metalevel.at/ediprolog/. An SWI Prolog programming
>     environment suitable for schools is available from
>     http://lernen.bildung.hessen.de/informatik/swiprolog/indexe.htm
> 
>     A Prolog plug-in for the "Eclipse"-IDE is available from:
>     http://eclipse.ime.usp.br/projetos/grad/plugin-prolog/index.html
> 
>     A sophisticated integrated editing and teaching environment with
>     declarative debugging, termination analysis and many visualisations is
>     available from http://www.complang.tuwien.ac.at/ulrich/gupu/
> 
>     16. How do I publish Prolog code?
> 
>     Logtalk ships with support for various syntax highlighters, also usable
>     for Prolog. These include support for Pygments (used e.g. on Trac and
>     GitHub), Rouge (use e.g. in GitLab), GeSHi (used e.g. on Wikis), minted
>     and texments LaTeX packages (e.g. source code listings), Google Code
>     Prettify, Source-highlight, Highlight, SyntaxHighlighter, and SHJS
>     (JavaScript highlighter for e.g. web pages).
> 
> 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.
> 
>     Special thanks to Jamie Andrews, Dirk-Jan Faber and Remko Troncon, who
>     have been maintaining and posting the FAQ in the past.
> 

[toc] | [prev] | [next] | [standalone]


#14653 — What does the "Red Tape" on Wayback Machine mean? (Was: Amzi! Retirement: 2026 is only next year)

FromMild Shock <janburse@fastmail.fm>
Date2025-07-13 15:14 +0200
SubjectWhat does the "Red Tape" on Wayback Machine mean? (Was: Amzi! Retirement: 2026 is only next year)
Message-ID<1050bga$26p4p$1@solani.org>
In reply to#14652
Hi,

BTW: I have red taped www.jekejeke.ch on
Wayback Machine . Red Taping is a legal
process which took a few steps, like E-mail

verification and DNS verifcation, I had to provide the
whole history that I owned www.jekejeke.ch, and it
is not temporary , its irreversible, since I do not

intend to remove the red tape. But the "red tape"
metaphor is spot on. The content is not actually
deleted from their servers. It is made inaccessible

to the public. So certain institution if there is a
need might still access it. But if I am run over by
a tram tomorrow, not sure whether I have a good

Software-Escrow for Jekejeke Prolog. Currently
you can assume that my company XLOG Technologies AG
is resposible for carrying out or delegating the

Software-Escrow of Jekejeke Prolog. And the company
still exists, it exists in active form, unlike some
other Prolog involved companies.

Bye

Mild Shock schrieb:
> Amzi! Prolog just tells me:
> 
> This Web site will be closing on 6/19/2026.
> Dennis Merritt is finally retiring!
> 
> https://www.amzi.com/
> 
> And here he writes:
> 
> I used to earn my living writing and selling software.
> My company was AmziLogic LLC, and sold Prolog
> and Prolog-based software.
> 
> https://denniscmerritt.com/amzi-inc/
> 
> So who is the benevolent Software-Escrow. Problem
> is even if there are lovely Prolog books from Amzi!
> The world might tick differently now,
> 
> USA in strong competition over AI with China,
> AGI already nocking on the door.
> 
> Markus Triska schrieb:
>>                   Frequently Asked Questions - comp.lang.prolog
>>
>>     Last-modified: 2022-02-24
>>     Last-changes: Update link to tutorial by J.R. Fisher. Geoffrey 
>> Churchill.
>>
>> Markus Triska (Mar. 2 2007 - ... )
>>
>> Remko Troncon (Jan. 6 2002 - Mar. 2 2007)
>>
>> Dirk-Jan Faber (Feb. 1 1999 - Jan. 6 2002)
>>
>> Jamie Andrews (Aug 26 1992 - Oct. 16 1997)
>>       __________________________________________________________________
>>
>>       General Information: This article contains the answers to some
>>       Frequently Asked Questions (FAQ) often seen in
>>       news://comp.lang.prolog/. It is posted (twice a month, currently on
>>       the 2nd 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://www.logic.at/prolog/faq/
>>
>>       Please send questions about the FAQ and updates to
>>       <triska@logic.at>.
>>
>>     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 or send in
>>     contributions, check http://www.cs.nmsu.edu/ALP/ or contact
>>
>>     Sandro Etalle <etalle@cs.utwente.nl>
>>
>>     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 used to be
>>     posted periodically to news://comp.lang.prolog.
>>
>>     2. Where can I get a free Prolog for system X (PC, Mac, Unix or 
>> other)?
>>
>>     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 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.)
>>
>>     ALF (Algebraic Logic Functional language)
>>
>>            + Platforms: UNIX
>>            + Available: Unknown
>>            + E-mail: Rudolf Opalla
>>              <opalla@julien.informatik.uni-dortmund.de>
>>            + Info: WAM-based language with narrowing/rewriting
>>
>>     Amzi! Prolog + Logic Server
>>
>>            + Platforms: Window, Linux and Solaris
>>            + Available: http://www.amzi.com/download/
>>            + E-mail: <info@amzi.com>
>>            + Info: Registration is compulsory, except for the Free
>>              Academic/Personal/Evaluation License.
>>
>>     Aquarius Prolog 1.0
>>
>>            + Platforms: UNIX
>>            + Available: 
>> http://www.info.ucl.ac.be/people/PVR/aquarius.html
>>            + Info: High performance, commercial functionality except
>>              debugging and modules.
>>
>>     Argo Prolog v.1.1
>>
>>            + Platforms: Solaris 1.x and HP-UX 9.x
>>            + Available: Unknown
>>            + Contact: Takao Doi <doi@csk.co.jp>
>>
>>     Arity/Prolog32
>>
>>            + Platforms: Win32
>>            + Available: https://github.com/Peter-Gabel/ArityProlog32
>>            + Info: Arity/Prolog32 provides a complete Prolog programming
>>              environment in which you can write, debug, and run Prolog
>>              programs in 32-bit Windows environments (95/98/NT/2000).
>>              Arity/Prolog32 is a powerful, highly optimized, and extended
>>              version of the logic programming language Prolog.
>>              Arity/Prolog32 is a complete compiler and interpreter 
>> written
>>              in Prolog, C, and Assembly language and is a superset of
>>              Clocksin and Mellish Prolog.
>>
>>     B-Prolog 8.1
>>
>>            + Platforms: Win32, Solaris, SunOS, UNIX, FreeBSD and Linux
>>            + Available: http://www.probp.com/
>>            + E-mail: Neng-Fa Zhou <support@probp.com>
>>            + Info: Free of charge for individual users.
>>
>>     BinProlog 7.0
>>
>>            + Platforms: Windows 95/98/NT, Linux and all major Unix
>>              platforms.
>>            + Available: https://code.google.com/archive/p/binprolog/
>>            + Info: Download free evaluation copies and see online demos.
>>              Inexpensive Educational licensing available.Has built-in
>>              networking, multi-threading, mobile code and distributed
>>              blackboards. Supports BinNet Internet Programming Tool kit.
>>
>>     Brain Aid Prolog (BAP) v1.4
>>
>>            + Platforms: Transputer systems
>>            + Info: BAP is a parallel prolog system for Transputer 
>> systems.
>>              Available under a Berkely style of copyright.
>>
>>     C#Prolog
>>
>>            + Platforms: Win32, UNIX
>>            + Available: http://sourceforge.net/projects/cs-prolog/
>>            + E-mail: John Pool <j.pool@ision.nl>
>>            + Info: A Prolog interpreter written in C#. Can easily be
>>              integrated in C# programs. Characteristics: reliable and 
>> quite
>>              fast beta version, command line interface, builtin DCG,
>>              XML-predicates, persistent predicates (using Firebird 
>> RDBMS),
>>              extendible.
>>
>>     Ciao 1.4
>>
>>            + Platforms: Linux, Win32 (95/98/NT), Solaris, SunOS, UNIX in
>>              general.
>>            + Available: http://ciao-lang.org
>>            + E-mail: Developers <ciao@clip.dia.fi.upm.es>, Users
>>              <ciao-users@clip.dia.fi.upm.es>
>>            + Info: Next generation LP/CLP system. Commercial 
>> functionality,
>>              but freely available w/source. ISO-Prolog + modules,
>>              networking, multi-threading, clp(r), clp(q), interfaces 
>> (Java,
>>              C, tcltk, WWW, databases/ODBC, ...), functions, 
>> higher-order,
>>              records, persistence, objects, assertions (types, modes, 
>> ...),
>>              source debugger, auto-documenter, static debugger, and more.
>>
>>     clp(FD)
>>
>>            + Platforms: UNIX
>>            + Contact: Daniel Diaz <daniel.diaz@inria.fr>
>>            + Info: Constraint logic programming over finite domains.
>>              Requires GNU C v.2.4.5 or higher.
>>
>>     clp(FD,S)
>>
>>            + Platforms: UNIX
>>            + Contact: Yan Georget <Yan.Georget@inria.fr>
>>            + Info: Requires GNU C (gcc) version 2.4.5. or higher.
>>
>>     CLP(R)
>>
>>            + Platforms: UNIX
>>            + Available: E-mail request from Joxan Jaffar
>>              <joxan@watson.ibm.com>.
>>            + Info: Constraint logic programming language, for academic 
>> and
>>              research purposes only.
>>
>>     CxProlog
>>
>>            + Platforms: UNIX, MacOS X, Windows
>>            + Available: http://ctp.di.fct.unl.pt/~amd/cxprolog/
>>            + Info: Open source (GPL) implementation supporting Unicode,
>>              threads, sockets, processes, contexts, imperative data
>>              structures, and interfaces with C/C++, Java, and wxWidgets
>>            + Contact: Artur Miguel Dias <amd@fct.unl.pt>
>>
>>     ECLiPSe Constraint Logic Programming System, subsuming Prolog.
>>
>>            + Platforms: Solaris, Linux, Linux/Alpha, Mac OS X, Windows
>>            + Available: http://eclipseclp.org or
>>              http://www.sourceforge.net/projects/eclipse-clp
>>            + Info: ECLiPSe is a Prolog and Constraint Programming 
>> platform
>>              with a long history and has been open-source since Sept 
>> 2006.
>>            + License: MPL
>>
>>     IF Prolog V5.3
>>
>>            + Platforms: Windows 95/98/NT/2000/XP, Linux, Solaris, AIX,
>>              HP-UX and other UNIX platforms
>>            + Available: http://www.ifcomputer.de/Products/Prolog/
>>            + E-mail: <info@ifcomputer.de>
>>            + Info: IF Prolog is a commercial Prolog system with 
>> interfaces
>>              to C/C++, Java, sockets, Windows events and a COM servers. A
>>              graphical debugger allows step-forward, step backward
>>              debugging of Prolog code. A static module concept allows 
>> many
>>              additional errors to be detected at compile time. Constraint
>>              Programming (for finite domains, intervals and booleans 
>> using
>>              global constraints and linear optimisation).
>>            + License: Free evaluation copies and inexpensive educational
>>              licensing available.
>>
>>     GNU Prolog
>>
>>            + Platforms: Many Unixes, Windows, MacOS X
>>            + Available: http://www.gprolog.org/
>>            + E-mail: Daniel Diaz <daniel.diaz@inria.fr>
>>
>>     Jinni 2.27
>>
>>            + Platforms: Java-based
>>            + Available: https://github.com/heathmanb/JinniProlog
>>            + Info: Multi-threaded, Java based Prolog interpreter with
>>              built-in networking, distributed blackboards and mobile code
>>              (inexpensive shareware licensing available).
>>
>>     JIProlog
>>
>>            + Platforms: Java-based
>>            + Available: http://www.jiprolog.com/
>>            + Info: Java Internet Prolog is a cross-platform pure Java 
>> 100%
>>              prolog interpreter that supplies Java world with the 
>> power of
>>              prolog language and provides prolog language with a 
>> technology
>>              to implement new predicates in Java.
>>
>>     KLIC
>>
>>            + Platforms: UNIX
>>            + Info: ICOT Free Software. Concurrent logic programming. 
>> Tested
>>              on Sparcs, DEC 7000, Gateway P5-60.
>>            + Contact: <ifs@icot.or.jp>
>>
>>     LPA Win-Prolog, demo version
>>
>>            + Platforms: Windows
>>            + Available: Available from http://www.lpa.co.uk/ind_dow.htm
>>
>>     MINERVA
>>
>>            + Platforms: Java
>>            + Info: Proprietary commercial ISO-Prolog Compiler in 100% 
>> Java
>>              support for web programming, XML, servlets, applets,
>>              standalones. Free evaluation license.
>>
>>     Modular SB-Prolog (= SB-Prolog version 3.1 plus modules)
>>
>>            + Platforms: SPARC, DECstation, MIPS, HP 9000 series, Sun 3.
>>            + Info: Copy-lefted.
>>
>>     Open Prolog
>>
>>            + Platforms: Apple Macintosh
>>            + Available: http://www.cs.tcd.ie/open-prolog/
>>            + E-mail: <brady@cs.tcd.ie>. (Michael Brady).
>>
>>     Poplog Prolog
>>
>>            + Platforms: Various Unixes, including Sun, Dec Alpha, HP and
>>              many others. Also a Win32 version is available. Sources
>>              available for other combinations.
>>            + Available: At the Free Poplog Web/FTP site, including full
>>              sources
>>              http://www.cs.bham.ac.uk/research/poplog/freepoplog.html
>>            + E-mail: queries may be posted to news://comp.lang.pop/, 
>> or to
>>              <pop-forum@cs.bham.ac.uk> or <A.Sloman@cs.bham.ac.uk> (Last
>>              resort!)
>>            + Info: Robust incremental compiler, part of the 
>> multi-language
>>              Poplog system (including Common Lisp, Pop-11 and Standard 
>> ML).
>>              Unix, Linux & VMS versions include full support for X window
>>              facilities/Motif. More information at
>>              http://www.cs.bham.ac.uk/research/poplog/poplog.info.html
>>              Licence modelled on XFree86. Can be freely distributed, 
>> though
>>              copyright is owned by Sussex University and ISL.
>>
>>     PIE2
>>
>>            + Platforms: Unknown
>>            + Available: On CompuServe in the AIEXPERT forum, interpreter
>>              and examples in PIE2.ZIP, documentation in PIEDOC.ZIP.
>>            + E-mail: Brent Ruggles <ruggles@shell.com>
>>
>>     QuProlog
>>
>>            + Platforms: UNIX, Linux, beta for MAC
>>            + Available:
>>              http://www.itee.uq.edu.au/~pjr/HomePages/QuPrologHome.html
>>            + E-mail: <pjr@itee.uq.edu.au>
>>            + Info: Extended WAM with support for quantifiers and
>>              substitutions, multi-threaded, high-level communication.
>>
>>     Scryer Prolog
>>
>>            + Platforms: Unix, Linux, Windows and Mac
>>            + Available: https://github.com/mthom/scryer-prolog
>>            + Info: A modern Prolog system written mostly in Rust.
>>
>>     Strawberry Prolog
>>
>>            + Platforms: Windows 95/NT, plans for UNIX and Macintosh
>>            + Available: http://www.dobrev.com/
>>            + E-mail: <dimiter@dobrev.com>
>>
>>     SWI Prolog
>>
>>            + Platforms: Binaries for Linux, Windows (NT/2000/XP/Vista) 
>> and
>>              Mac OS X (darwin). Sources: ANSI-C, both 32 and 64-bit
>>              machines, compiles on almost all Unix systems and more.
>>            + Available: http://www.swi-prolog.org
>>            + Info: Complete, ISO and Edinburgh standard, common
>>              optimizations, GC including atoms. Portable graphics, 
>> multiple
>>              threads, constraints, comprehensive libraries for (semantic)
>>              web programming, Unicode, source-level debugger, advanced
>>              syntax colouring
>>            + License: Simplified BSD. Run license/0 for more information.
>>
>>     Tau Prolog
>>
>>            + Platforms: Web-based
>>            + Available: http://tau-prolog.org/
>>            + Info: An open source Prolog interpreter in JavaScript.
>>
>>     Trinc-Prolog
>>
>>            + Platforms: Windows 95/98/NT 4.0, plans for Windows 2000, 
>> Linux
>>              and Sun Solaris
>>            + E-mail: <info@trinc-prolog.com>
>>
>>     Visual Prolog
>>
>>            + Platforms: Win32
>>            + Available: http://www.visual-prolog.com
>>            + Info: Includes all the facilities necessary to write mission
>>              critical commercial-grade applications. Fully visual
>>              development environment. Open architecture. Object-oriented.
>>              Built-in database system and ODBC support. Visual Prolog
>>              Personal Edition is available on a freeware license.
>>
>>     wamcc
>>
>>            + Platforms: UNIX
>>            + Info: Compiler which translates Prolog to C via WAM.
>>              Debuggers. Requires GNU C v.2.4.5 or higher.
>>            + Contact: Daniel Diaz <daniel.diaz@inria.fr>
>>
>>     XGP
>>
>>            + Platforms: Apple Macintosh OS X, 10.2.3+
>>            + Available: http://xgp.sourceforge.net/
>>            + Info: XGP is an open source (GPL) integrated development
>>              environment with user interface and graphics support 
>> based on
>>              gprolog and Cocoa under Macintosh OS X.
>>
>>     XSB
>>
>>            + Platforms: Many, including SunOS, Linux and Windows
>>            + Available: http://xsb.sourceforge.net/
>>            + E-mail: <xsb-users@lists.sourceforge.net>
>>            + Info: system with SLG-resolution, HiLog syntax, and
>>              unification factoring.
>>
>>     Yap
>>
>>            + Platforms: UNIX-based platforms and Windows
>>            + Available: https://github.com/vscosta/yap-6.3
>>            + E-mail: Vitor Santos Costa <vsc@ncc.up.pt>
>>            + Info: Yap is entirely written in C and Prolog and should be
>>              portable to most 32-bit and 64-bit Unix based platforms. A
>>              Windows port is also available. Yap4.2 is distributed under
>>              Perl's artistic license and can be freely distributed.
>>
>>     3. What commercial systems are available? What about systems 
>> available
>>     for a price from research institutions?
>>
>>     Many commercial systems are listed in the Prolog Resource Guide. The
>>     Resource Guide also lists many systems which are not exactly
>>     "commercial", but available for a price from research 
>> institutions. 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 Prolog Resource Guide hasn't been updated lately, but 
>> nevertheless
>>     still contains some valuable information. It can be found at
>>     http://www-2.cs.cmu.edu/Groups/AI/html/faqs/lang/prolog/prg/top.html.
>>
>>     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.
>>
>>     ALS (Applied Logic Systems)
>>
>>            + Web site: http://alsprolog.com
>>
>>     Amzi! inc.
>>
>>            + Web site: http://www.amzi.com
>>            + Information: <info@amzi.com>
>>            + Sales: <sales@amzi.com>
>>            + Support: <support@amzi.com>
>>
>>     Arity/Prolog32
>>
>>            + Web site: https://github.com/Peter-Gabel/ArityProlog32
>>
>>     Ciao, PiLLoW, WebDB, etc.
>>
>>            + Web site: http://www.clip.dia.fi.upm.es/Software
>>            + Users' group: <ciao-users@clip.dia.fi.upm.es>
>>            + Information: <ciao@clip.dia.fi.upm.es>
>>            + Tech support: <ciao-bugs@clip.dia.fi.upm.es>
>>
>>     COSYTEC (CHIP V5)
>>
>>            + Web site: http://www.cosytec.com
>>            + Information: <info@cosytec.com> (or .fr)
>>            + Tech Support: <support@cosytec.com> (or .fr)
>>
>>     ECLiPSe
>>
>>            + Web site: http://eclipseclp.org
>>            + Users' group: <eclipse-clp-users@lists.sf.net>
>>            + Tech support: <http://eclipseclp.org/bugs.html>
>>            + Support contracts: <info@coninfer.com>
>>
>>     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>
>>
>>     GNU Prolog
>>
>>            + Web site: http://www.gprolog.org/
>>            + Users' group: <users-prolog-request@gnu.org>
>>            + Bug reports: <bug-prolog@gnu.org>
>>
>>     LPA
>>
>>            + Web site: http://www.lpa.co.uk/
>>            + Sales: <sales@lpa.co.uk>
>>            + Tech support: <support@lpa.co.uk>
>>
>>     MasterProLog
>>
>>            + Formerly BIM ProLog
>>
>>     PDC Prolog
>>
>>            + PDC Prolog is the succesor to Turbo Prolog and the 
>> predecessor
>>              to Visual Prolog.
>>
>>     ProLog by BIM
>>
>>            + Currently MasterProLog
>>
>>     Quintus
>>
>>            + Web site: http://quintus.sics.se
>>            + Mailing list: see
>>              http://www.sics.se/isl/quintuswww/site/community.html
>>            + Sales: <qpsales@sics.se>
>>            + Tech support: <qpsupport@sics.se>
>>
>>     SICStus
>>
>>            + Web page: http://www.sics.se/sicstus
>>            + Mailing list: see
>>              http://www.sics.se/isl/sicstuswww/site/community.html
>>            + Sales: <sicstus-request@sics.se>
>>            + Tech support: <sicstus-support@sics.se>
>>
>>     Trinc / Trinc-Prolog
>>
>>            + Information: <info@trinc-prolog.com>
>>            + Sales: <sales@trinc-prolog.com>
>>            + Support: <support@trinc-prolog.com>
>>
>>     Turbo Prolog
>>
>>            + Turbo Prolog is the predecessor of PDC Prolog (see above).
>>
>>     Visual Prolog
>>
>>            + Web site: http://www.visual-prolog.com/
>>            + Information: <sales@pdc.dk> (or <sales@visual-prolog.com>)
>>            + Sales: <sales@pdc.dk> (or <sales@visual-prolog.com>)
>>            + Tech support: <support@pdc.dk> (or
>>              <support@visual-prolog.com>)
>>
>>     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, note that there are many different "Prologs" and other logic
>>     programming languages available, all with different capabilities.
>>
>>     6. What are the recent developments?
>>
>>     There are some languages in development which do not have Prolog
>>     syntax, but do subsume and generalize Prolog's logic programming
>>     abilities.
>>
>>     Mercury
>>
>>            + Web site: http://www.mercury.cs.mu.oz.au/index.html
>>
>>     The Mozart Consortium:
>>
>>            + Web site: http://mozart.github.io/
>>            + Mailing lists: <http://mozart.github.io/mailing-lists/>
>>
>>     Some other languages bring new developments while also supporting
>>     Prolog syntax and functionality as an option:
>>
>>     Ciao
>>
>>            + Web site: http://www.clip.dia.fi.upm.es/Software
>>            + Users' group: <ciao-users@clip.dia.fi.upm.es>
>>            + Information: <ciao@clip.dia.fi.upm.es>
>>            + Tech support: <ciao-bugs@clip.dia.fi.upm.es>
>>
>>     Logtalk
>>
>>            + Web site: http://logtalk.org/
>>            + E-mail: Paulo Moura <pmoura@logtalk.org>
>>            + Info: Open source object-oriented extension to Prolog
>>              compatible with most Prolog compilers.
>>
>>     7. 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 news://comp.lang.prolog/ readers who would
>>     be glad to help people making a legitimate attempt to learn Prolog.
>>
>>     8. Can you suggest some books on Prolog?
>>
>>     The Prolog Resource Guide (see above) contains a listing of Prolog
>>     books. It is maintained by Mark Kantrowitz
>>     (<Mark.Kantrowitz@glinda.oz.cs.cmu.edu>), and posted periodically on
>>     news://comp.lang.prolog.
>>
>>     Here are some of the most popular books on Prolog.
>>
>>     Introductory
>>
>>            + "Programming In Prolog". William F. Clocksin and Christopher
>>              S. Mellish. Springer-Verlag, 2003 (5th ed).
>>            + "Prolog for Programmers". Feliks Kluzniak and Stanislaw
>>              Szpakowicz. Academic Press, London, 1985, now available
>>              without charge from
>>              https://sites.google.com/site/prologforprogrammers/
>>            + "Prolog Programming for Artificial Intelligence". Ivan 
>> Bratko.
>>              Addison-Wesley, 2001 (3rd ed).
>>
>>     Advanced
>>
>>            + "The Art of Prolog: Advanced Programming Techniques". Leon
>>              Sterling and Ehud Shapiro. MIT Press, 1994 (2nd ed).
>>            + "The Craft of Prolog". Richard A. O'Keefe. MIT Press, 1990.
>>
>>     Logic programming theory
>>
>>            + "Foundations of Logic Programming". John Lloyd.
>>              Springer-Verlag, 1988 (2nd ed).
>>            + "Logic, Programming and Prolog". Ulf Nilsson and Jan
>>              Maluszynski. Originally published by John Wiley & Sons Ltd
>>              (2nd ed. 1995) and now available without charge from
>>              http://www.ida.liu.se/~ulfni/lpp
>>
>>     Expert Systems
>>
>>            + "Building Expert Systems in Prolog". Dennis Merritt.
>>              Springer-Verlag, 1989. HTML & PDF versions available from
>>              http://www.amzi.com/ExpertSystemsInProlog
>>
>>     9. Are there any WWW archives of comp.lang.prolog ?
>>
>>     Yes, there are: Google Groups has archives of 
>> news://comp.lang.prolog/.
>>     They can be found at
>>     https://groups.google.com/forum/#!forum/comp.lang.prolog
>>
>>     10. How can I get the ISO Prolog standard? Where can I go for more
>>     information about it?
>>
>>     You can obtain the approved international standards from your 
>> national
>>     member body or directly from ISO (http://www.iso.org).
>>
>>     The working group on Prolog standardisation is ISO/IEC JTC1/SC22/WG17
>>     (http://www.sju.edu/~jhodgson/wg17/).
>>
>>     Contacts:
>>
>>            + Convenor of WG17: Ulrich Neumerkel
>>              (<ulrich@mips.complang.tuwien.ac.at>)
>>
>>     Further literature: "Prolog: The Standard (Reference manual)", P.
>>     Deransart, A. Ed-Dbali, L. Cervoni, Springer Verlag (1996). Extra
>>     information can be found on
>>     http://pauillac.inria.fr/~deransar/prolog/docs.html
>>
>>     
>> http://www-2.cs.cmu.edu/afs/cs.cmu.edu/project/ai-repository/ai/lang/pr
>>     olog/doc/standard/ contains the December 1991 draft, the March 1993
>>     draft, Michael Covington's summary of it, and Richard O'Keefe's 1984
>>     Prolog standard draft.
>>
>>     http://www.complang.tuwien.ac.at/ulrich/iso-prolog/ ISO Prolog works
>>     and related material by the convenor of WG17.
>>
>>     For questions about the standard, use this newsgroup or 
>> Stackoverflow.
>>
>>     11. 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). The
>>     book is out of print, and available online at
>>     http://wambook.sourceforge.net.
>>
>>     12. Is there a WWW page on logic programming?
>>
>>     Yes, there is one by Jonathan Bowen; the URL is
>>     http://www.afm.sbu.ac.uk/logic-prog/. He invites us to mail him at
>>     <jonathan.bowen@sbu.ac.uk> with any relevant information for 
>> inclusion.
>>
>>     A collection of artifacts from logic programming languages beginning
>>     with Marseille Prolog is available from
>>     http://www.softwarepreservation.org/projects/prolog/index.html
>>
>>     A large amount of Prolog code is available from the CMU AI 
>> Repository:
>>     
>> http://www.cs.cmu.edu/afs/cs/project/ai-repository/ai/lang/prolog/0.htm
>>     l
>>
>>     Recently, Stackoverflow has become a valuable resource for Prolog
>>     questions and answers: 
>> http://stackoverflow.com/questions/tagged/prolog
>>
>>     Another community resource is the #prolog IRC channel on
>>     irc.libera.chat.
>>
>>     13. Can I do Internet/WWW programming with Prolog?
>>
>>     Prolog is very suitable for this task. Several commercial and free
>>     implementations include special support for it. A page 
>> specifically on
>>     this topic (including some tutorials) is maintained at
>>     http://www.clip.dia.fi.upm.es/lpnet/lpnet.html. A public-domain 
>> library
>>     exists (PiLLoW) for several popular Prolog systems which helps in the
>>     task. See: http://www.clip.dia.fi.upm.es/Software/pillow/
>>
>>     14. Is there a WWW page with some tutorials on Prolog?
>>
>>     Beginner level:
>>
>>            + Adventure in Prolog:
>>              http://www.amzi.com/AdventureInProlog/advfrtop.htm
>>            + On-line guide to Prolog Programming:
>>              http://kti.ms.mff.cuni.cz/~bartak/prolog/index.html
>>            + Prolog Programming, A First Course:
>>              http://computing.unn.ac.uk/staff/cgpb4/prologbook/book.html
>>            + Learn Prolog Now!: http://www.learnprolognow.org
>>
>>     Intermediate to advanced level:
>>
>>            + https://skolemmachines.org/ThePrologTutorial/
>>
>>     15. How do I edit Prolog code?
>>
>>     Emacs and VIM ship with basic support for Prolog. A much improved 
>> Emacs
>>     mode is maintained by Stefan Bruda and available from
>>     https://bruda.ca/emacs/prolog_mode_for_emacs
>>
>>     Logtalk ships with various editing services for many common editors,
>>     also usable for Prolog.
>>
>>     SWI Prolog has a built-in Emacs clone called PceEmacs. There are also
>>     Emacs definitions that let you evaluate embedded queries:
>>     https://www.metalevel.at/ediprolog/. An SWI Prolog programming
>>     environment suitable for schools is available from
>>     http://lernen.bildung.hessen.de/informatik/swiprolog/indexe.htm
>>
>>     A Prolog plug-in for the "Eclipse"-IDE is available from:
>>     http://eclipse.ime.usp.br/projetos/grad/plugin-prolog/index.html
>>
>>     A sophisticated integrated editing and teaching environment with
>>     declarative debugging, termination analysis and many 
>> visualisations is
>>     available from http://www.complang.tuwien.ac.at/ulrich/gupu/
>>
>>     16. How do I publish Prolog code?
>>
>>     Logtalk ships with support for various syntax highlighters, also 
>> usable
>>     for Prolog. These include support for Pygments (used e.g. on Trac and
>>     GitHub), Rouge (use e.g. in GitLab), GeSHi (used e.g. on Wikis), 
>> minted
>>     and texments LaTeX packages (e.g. source code listings), Google Code
>>     Prettify, Source-highlight, Highlight, SyntaxHighlighter, and SHJS
>>     (JavaScript highlighter for e.g. web pages).
>>
>> 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.
>>
>>     Special thanks to Jamie Andrews, Dirk-Jan Faber and Remko Troncon, 
>> who
>>     have been maintaining and posting the FAQ in the past.
>>
> 

[toc] | [prev] | [next] | [standalone]


#14656 — Prolog can keep up with the AI Boom [Forget about CLAM] (Was: What does the "Red Tape" on Wayback Machine mean?)

FromMild Shock <janburse@fastmail.fm>
Date2025-07-13 15:27 +0200
SubjectProlog can keep up with the AI Boom [Forget about CLAM] (Was: What does the "Red Tape" on Wayback Machine mean?)
Message-ID<1050c8d$26pg6$1@solani.org>
In reply to#14653
Hi,

I am still convinced Prolog can keep up with the AI Boom.
Nothing listed in the Prolog FAQ is really useful to
keep up with the AI Boom. Its nice historical footnote.

I don't think anything CLAM , i.e. constraint logic
abstract machine, will hit the spot of the AI Boom.
Prove me wrong if you can. Autodiff with CLAM, holy

cow what a nonsense...

Bye

Mild Shock schrieb:
> Hi,
> 
> BTW: I have red taped www.jekejeke.ch on
> Wayback Machine . Red Taping is a legal
> process which took a few steps, like E-mail
> 
> verification and DNS verifcation, I had to provide the
> whole history that I owned www.jekejeke.ch, and it
> is not temporary , its irreversible, since I do not
> 
> intend to remove the red tape. But the "red tape"
> metaphor is spot on. The content is not actually
> deleted from their servers. It is made inaccessible
> 
> to the public. So certain institution if there is a
> need might still access it. But if I am run over by
> a tram tomorrow, not sure whether I have a good
> 
> Software-Escrow for Jekejeke Prolog. Currently
> you can assume that my company XLOG Technologies AG
> is resposible for carrying out or delegating the
> 
> Software-Escrow of Jekejeke Prolog. And the company
> still exists, it exists in active form, unlike some
> other Prolog involved companies.
> 
> Bye
> 
> Mild Shock schrieb:
>> Amzi! Prolog just tells me:
>>
>> This Web site will be closing on 6/19/2026.
>> Dennis Merritt is finally retiring!
>>
>> https://www.amzi.com/
>>
>> And here he writes:
>>
>> I used to earn my living writing and selling software.
>> My company was AmziLogic LLC, and sold Prolog
>> and Prolog-based software.
>>
>> https://denniscmerritt.com/amzi-inc/
>>
>> So who is the benevolent Software-Escrow. Problem
>> is even if there are lovely Prolog books from Amzi!
>> The world might tick differently now,
>>
>> USA in strong competition over AI with China,
>> AGI already nocking on the door.
>>
>> Markus Triska schrieb:
>>>                   Frequently Asked Questions - comp.lang.prolog
>>>
>>>     Last-modified: 2022-02-24
>>>     Last-changes: Update link to tutorial by J.R. Fisher. Geoffrey 
>>> Churchill.
>>>
>>> Markus Triska (Mar. 2 2007 - ... )
>>>
>>> Remko Troncon (Jan. 6 2002 - Mar. 2 2007)
>>>
>>> Dirk-Jan Faber (Feb. 1 1999 - Jan. 6 2002)
>>>
>>> Jamie Andrews (Aug 26 1992 - Oct. 16 1997)
>>>       __________________________________________________________________
>>>
>>>       General Information: This article contains the answers to some
>>>       Frequently Asked Questions (FAQ) often seen in
>>>       news://comp.lang.prolog/. It is posted (twice a month, 
>>> currently on
>>>       the 2nd 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://www.logic.at/prolog/faq/
>>>
>>>       Please send questions about the FAQ and updates to
>>>       <triska@logic.at>.
>>>
>>>     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 or send in
>>>     contributions, check http://www.cs.nmsu.edu/ALP/ or contact
>>>
>>>     Sandro Etalle <etalle@cs.utwente.nl>
>>>
>>>     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 used to be
>>>     posted periodically to news://comp.lang.prolog.
>>>
>>>     2. Where can I get a free Prolog for system X (PC, Mac, Unix or 
>>> other)?
>>>
>>>     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 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.)
>>>
>>>     ALF (Algebraic Logic Functional language)
>>>
>>>            + Platforms: UNIX
>>>            + Available: Unknown
>>>            + E-mail: Rudolf Opalla
>>>              <opalla@julien.informatik.uni-dortmund.de>
>>>            + Info: WAM-based language with narrowing/rewriting
>>>
>>>     Amzi! Prolog + Logic Server
>>>
>>>            + Platforms: Window, Linux and Solaris
>>>            + Available: http://www.amzi.com/download/
>>>            + E-mail: <info@amzi.com>
>>>            + Info: Registration is compulsory, except for the Free
>>>              Academic/Personal/Evaluation License.
>>>
>>>     Aquarius Prolog 1.0
>>>
>>>            + Platforms: UNIX
>>>            + Available: 
>>> http://www.info.ucl.ac.be/people/PVR/aquarius.html
>>>            + Info: High performance, commercial functionality except
>>>              debugging and modules.
>>>
>>>     Argo Prolog v.1.1
>>>
>>>            + Platforms: Solaris 1.x and HP-UX 9.x
>>>            + Available: Unknown
>>>            + Contact: Takao Doi <doi@csk.co.jp>
>>>
>>>     Arity/Prolog32
>>>
>>>            + Platforms: Win32
>>>            + Available: https://github.com/Peter-Gabel/ArityProlog32
>>>            + Info: Arity/Prolog32 provides a complete Prolog programming
>>>              environment in which you can write, debug, and run Prolog
>>>              programs in 32-bit Windows environments (95/98/NT/2000).
>>>              Arity/Prolog32 is a powerful, highly optimized, and 
>>> extended
>>>              version of the logic programming language Prolog.
>>>              Arity/Prolog32 is a complete compiler and interpreter 
>>> written
>>>              in Prolog, C, and Assembly language and is a superset of
>>>              Clocksin and Mellish Prolog.
>>>
>>>     B-Prolog 8.1
>>>
>>>            + Platforms: Win32, Solaris, SunOS, UNIX, FreeBSD and Linux
>>>            + Available: http://www.probp.com/
>>>            + E-mail: Neng-Fa Zhou <support@probp.com>
>>>            + Info: Free of charge for individual users.
>>>
>>>     BinProlog 7.0
>>>
>>>            + Platforms: Windows 95/98/NT, Linux and all major Unix
>>>              platforms.
>>>            + Available: https://code.google.com/archive/p/binprolog/
>>>            + Info: Download free evaluation copies and see online demos.
>>>              Inexpensive Educational licensing available.Has built-in
>>>              networking, multi-threading, mobile code and distributed
>>>              blackboards. Supports BinNet Internet Programming Tool kit.
>>>
>>>     Brain Aid Prolog (BAP) v1.4
>>>
>>>            + Platforms: Transputer systems
>>>            + Info: BAP is a parallel prolog system for Transputer 
>>> systems.
>>>              Available under a Berkely style of copyright.
>>>
>>>     C#Prolog
>>>
>>>            + Platforms: Win32, UNIX
>>>            + Available: http://sourceforge.net/projects/cs-prolog/
>>>            + E-mail: John Pool <j.pool@ision.nl>
>>>            + Info: A Prolog interpreter written in C#. Can easily be
>>>              integrated in C# programs. Characteristics: reliable and 
>>> quite
>>>              fast beta version, command line interface, builtin DCG,
>>>              XML-predicates, persistent predicates (using Firebird 
>>> RDBMS),
>>>              extendible.
>>>
>>>     Ciao 1.4
>>>
>>>            + Platforms: Linux, Win32 (95/98/NT), Solaris, SunOS, UNIX in
>>>              general.
>>>            + Available: http://ciao-lang.org
>>>            + E-mail: Developers <ciao@clip.dia.fi.upm.es>, Users
>>>              <ciao-users@clip.dia.fi.upm.es>
>>>            + Info: Next generation LP/CLP system. Commercial 
>>> functionality,
>>>              but freely available w/source. ISO-Prolog + modules,
>>>              networking, multi-threading, clp(r), clp(q), interfaces 
>>> (Java,
>>>              C, tcltk, WWW, databases/ODBC, ...), functions, 
>>> higher-order,
>>>              records, persistence, objects, assertions (types, modes, 
>>> ...),
>>>              source debugger, auto-documenter, static debugger, and 
>>> more.
>>>
>>>     clp(FD)
>>>
>>>            + Platforms: UNIX
>>>            + Contact: Daniel Diaz <daniel.diaz@inria.fr>
>>>            + Info: Constraint logic programming over finite domains.
>>>              Requires GNU C v.2.4.5 or higher.
>>>
>>>     clp(FD,S)
>>>
>>>            + Platforms: UNIX
>>>            + Contact: Yan Georget <Yan.Georget@inria.fr>
>>>            + Info: Requires GNU C (gcc) version 2.4.5. or higher.
>>>
>>>     CLP(R)
>>>
>>>            + Platforms: UNIX
>>>            + Available: E-mail request from Joxan Jaffar
>>>              <joxan@watson.ibm.com>.
>>>            + Info: Constraint logic programming language, for 
>>> academic and
>>>              research purposes only.
>>>
>>>     CxProlog
>>>
>>>            + Platforms: UNIX, MacOS X, Windows
>>>            + Available: http://ctp.di.fct.unl.pt/~amd/cxprolog/
>>>            + Info: Open source (GPL) implementation supporting Unicode,
>>>              threads, sockets, processes, contexts, imperative data
>>>              structures, and interfaces with C/C++, Java, and wxWidgets
>>>            + Contact: Artur Miguel Dias <amd@fct.unl.pt>
>>>
>>>     ECLiPSe Constraint Logic Programming System, subsuming Prolog.
>>>
>>>            + Platforms: Solaris, Linux, Linux/Alpha, Mac OS X, Windows
>>>            + Available: http://eclipseclp.org or
>>>              http://www.sourceforge.net/projects/eclipse-clp
>>>            + Info: ECLiPSe is a Prolog and Constraint Programming 
>>> platform
>>>              with a long history and has been open-source since Sept 
>>> 2006.
>>>            + License: MPL
>>>
>>>     IF Prolog V5.3
>>>
>>>            + Platforms: Windows 95/98/NT/2000/XP, Linux, Solaris, AIX,
>>>              HP-UX and other UNIX platforms
>>>            + Available: http://www.ifcomputer.de/Products/Prolog/
>>>            + E-mail: <info@ifcomputer.de>
>>>            + Info: IF Prolog is a commercial Prolog system with 
>>> interfaces
>>>              to C/C++, Java, sockets, Windows events and a COM 
>>> servers. A
>>>              graphical debugger allows step-forward, step backward
>>>              debugging of Prolog code. A static module concept allows 
>>> many
>>>              additional errors to be detected at compile time. 
>>> Constraint
>>>              Programming (for finite domains, intervals and booleans 
>>> using
>>>              global constraints and linear optimisation).
>>>            + License: Free evaluation copies and inexpensive educational
>>>              licensing available.
>>>
>>>     GNU Prolog
>>>
>>>            + Platforms: Many Unixes, Windows, MacOS X
>>>            + Available: http://www.gprolog.org/
>>>            + E-mail: Daniel Diaz <daniel.diaz@inria.fr>
>>>
>>>     Jinni 2.27
>>>
>>>            + Platforms: Java-based
>>>            + Available: https://github.com/heathmanb/JinniProlog
>>>            + Info: Multi-threaded, Java based Prolog interpreter with
>>>              built-in networking, distributed blackboards and mobile 
>>> code
>>>              (inexpensive shareware licensing available).
>>>
>>>     JIProlog
>>>
>>>            + Platforms: Java-based
>>>            + Available: http://www.jiprolog.com/
>>>            + Info: Java Internet Prolog is a cross-platform pure Java 
>>> 100%
>>>              prolog interpreter that supplies Java world with the 
>>> power of
>>>              prolog language and provides prolog language with a 
>>> technology
>>>              to implement new predicates in Java.
>>>
>>>     KLIC
>>>
>>>            + Platforms: UNIX
>>>            + Info: ICOT Free Software. Concurrent logic programming. 
>>> Tested
>>>              on Sparcs, DEC 7000, Gateway P5-60.
>>>            + Contact: <ifs@icot.or.jp>
>>>
>>>     LPA Win-Prolog, demo version
>>>
>>>            + Platforms: Windows
>>>            + Available: Available from http://www.lpa.co.uk/ind_dow.htm
>>>
>>>     MINERVA
>>>
>>>            + Platforms: Java
>>>            + Info: Proprietary commercial ISO-Prolog Compiler in 100% 
>>> Java
>>>              support for web programming, XML, servlets, applets,
>>>              standalones. Free evaluation license.
>>>
>>>     Modular SB-Prolog (= SB-Prolog version 3.1 plus modules)
>>>
>>>            + Platforms: SPARC, DECstation, MIPS, HP 9000 series, Sun 3.
>>>            + Info: Copy-lefted.
>>>
>>>     Open Prolog
>>>
>>>            + Platforms: Apple Macintosh
>>>            + Available: http://www.cs.tcd.ie/open-prolog/
>>>            + E-mail: <brady@cs.tcd.ie>. (Michael Brady).
>>>
>>>     Poplog Prolog
>>>
>>>            + Platforms: Various Unixes, including Sun, Dec Alpha, HP and
>>>              many others. Also a Win32 version is available. Sources
>>>              available for other combinations.
>>>            + Available: At the Free Poplog Web/FTP site, including full
>>>              sources
>>>              http://www.cs.bham.ac.uk/research/poplog/freepoplog.html
>>>            + E-mail: queries may be posted to news://comp.lang.pop/, 
>>> or to
>>>              <pop-forum@cs.bham.ac.uk> or <A.Sloman@cs.bham.ac.uk> (Last
>>>              resort!)
>>>            + Info: Robust incremental compiler, part of the 
>>> multi-language
>>>              Poplog system (including Common Lisp, Pop-11 and 
>>> Standard ML).
>>>              Unix, Linux & VMS versions include full support for X 
>>> window
>>>              facilities/Motif. More information at
>>>              http://www.cs.bham.ac.uk/research/poplog/poplog.info.html
>>>              Licence modelled on XFree86. Can be freely distributed, 
>>> though
>>>              copyright is owned by Sussex University and ISL.
>>>
>>>     PIE2
>>>
>>>            + Platforms: Unknown
>>>            + Available: On CompuServe in the AIEXPERT forum, interpreter
>>>              and examples in PIE2.ZIP, documentation in PIEDOC.ZIP.
>>>            + E-mail: Brent Ruggles <ruggles@shell.com>
>>>
>>>     QuProlog
>>>
>>>            + Platforms: UNIX, Linux, beta for MAC
>>>            + Available:
>>>              http://www.itee.uq.edu.au/~pjr/HomePages/QuPrologHome.html
>>>            + E-mail: <pjr@itee.uq.edu.au>
>>>            + Info: Extended WAM with support for quantifiers and
>>>              substitutions, multi-threaded, high-level communication.
>>>
>>>     Scryer Prolog
>>>
>>>            + Platforms: Unix, Linux, Windows and Mac
>>>            + Available: https://github.com/mthom/scryer-prolog
>>>            + Info: A modern Prolog system written mostly in Rust.
>>>
>>>     Strawberry Prolog
>>>
>>>            + Platforms: Windows 95/NT, plans for UNIX and Macintosh
>>>            + Available: http://www.dobrev.com/
>>>            + E-mail: <dimiter@dobrev.com>
>>>
>>>     SWI Prolog
>>>
>>>            + Platforms: Binaries for Linux, Windows 
>>> (NT/2000/XP/Vista) and
>>>              Mac OS X (darwin). Sources: ANSI-C, both 32 and 64-bit
>>>              machines, compiles on almost all Unix systems and more.
>>>            + Available: http://www.swi-prolog.org
>>>            + Info: Complete, ISO and Edinburgh standard, common
>>>              optimizations, GC including atoms. Portable graphics, 
>>> multiple
>>>              threads, constraints, comprehensive libraries for 
>>> (semantic)
>>>              web programming, Unicode, source-level debugger, advanced
>>>              syntax colouring
>>>            + License: Simplified BSD. Run license/0 for more 
>>> information.
>>>
>>>     Tau Prolog
>>>
>>>            + Platforms: Web-based
>>>            + Available: http://tau-prolog.org/
>>>            + Info: An open source Prolog interpreter in JavaScript.
>>>
>>>     Trinc-Prolog
>>>
>>>            + Platforms: Windows 95/98/NT 4.0, plans for Windows 2000, 
>>> Linux
>>>              and Sun Solaris
>>>            + E-mail: <info@trinc-prolog.com>
>>>
>>>     Visual Prolog
>>>
>>>            + Platforms: Win32
>>>            + Available: http://www.visual-prolog.com
>>>            + Info: Includes all the facilities necessary to write 
>>> mission
>>>              critical commercial-grade applications. Fully visual
>>>              development environment. Open architecture. 
>>> Object-oriented.
>>>              Built-in database system and ODBC support. Visual Prolog
>>>              Personal Edition is available on a freeware license.
>>>
>>>     wamcc
>>>
>>>            + Platforms: UNIX
>>>            + Info: Compiler which translates Prolog to C via WAM.
>>>              Debuggers. Requires GNU C v.2.4.5 or higher.
>>>            + Contact: Daniel Diaz <daniel.diaz@inria.fr>
>>>
>>>     XGP
>>>
>>>            + Platforms: Apple Macintosh OS X, 10.2.3+
>>>            + Available: http://xgp.sourceforge.net/
>>>            + Info: XGP is an open source (GPL) integrated development
>>>              environment with user interface and graphics support 
>>> based on
>>>              gprolog and Cocoa under Macintosh OS X.
>>>
>>>     XSB
>>>
>>>            + Platforms: Many, including SunOS, Linux and Windows
>>>            + Available: http://xsb.sourceforge.net/
>>>            + E-mail: <xsb-users@lists.sourceforge.net>
>>>            + Info: system with SLG-resolution, HiLog syntax, and
>>>              unification factoring.
>>>
>>>     Yap
>>>
>>>            + Platforms: UNIX-based platforms and Windows
>>>            + Available: https://github.com/vscosta/yap-6.3
>>>            + E-mail: Vitor Santos Costa <vsc@ncc.up.pt>
>>>            + Info: Yap is entirely written in C and Prolog and should be
>>>              portable to most 32-bit and 64-bit Unix based platforms. A
>>>              Windows port is also available. Yap4.2 is distributed under
>>>              Perl's artistic license and can be freely distributed.
>>>
>>>     3. What commercial systems are available? What about systems 
>>> available
>>>     for a price from research institutions?
>>>
>>>     Many commercial systems are listed in the Prolog Resource Guide. The
>>>     Resource Guide also lists many systems which are not exactly
>>>     "commercial", but available for a price from research 
>>> institutions. 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 Prolog Resource Guide hasn't been updated lately, but 
>>> nevertheless
>>>     still contains some valuable information. It can be found at
>>>     
>>> http://www-2.cs.cmu.edu/Groups/AI/html/faqs/lang/prolog/prg/top.html.
>>>
>>>     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.
>>>
>>>     ALS (Applied Logic Systems)
>>>
>>>            + Web site: http://alsprolog.com
>>>
>>>     Amzi! inc.
>>>
>>>            + Web site: http://www.amzi.com
>>>            + Information: <info@amzi.com>
>>>            + Sales: <sales@amzi.com>
>>>            + Support: <support@amzi.com>
>>>
>>>     Arity/Prolog32
>>>
>>>            + Web site: https://github.com/Peter-Gabel/ArityProlog32
>>>
>>>     Ciao, PiLLoW, WebDB, etc.
>>>
>>>            + Web site: http://www.clip.dia.fi.upm.es/Software
>>>            + Users' group: <ciao-users@clip.dia.fi.upm.es>
>>>            + Information: <ciao@clip.dia.fi.upm.es>
>>>            + Tech support: <ciao-bugs@clip.dia.fi.upm.es>
>>>
>>>     COSYTEC (CHIP V5)
>>>
>>>            + Web site: http://www.cosytec.com
>>>            + Information: <info@cosytec.com> (or .fr)
>>>            + Tech Support: <support@cosytec.com> (or .fr)
>>>
>>>     ECLiPSe
>>>
>>>            + Web site: http://eclipseclp.org
>>>            + Users' group: <eclipse-clp-users@lists.sf.net>
>>>            + Tech support: <http://eclipseclp.org/bugs.html>
>>>            + Support contracts: <info@coninfer.com>
>>>
>>>     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>
>>>
>>>     GNU Prolog
>>>
>>>            + Web site: http://www.gprolog.org/
>>>            + Users' group: <users-prolog-request@gnu.org>
>>>            + Bug reports: <bug-prolog@gnu.org>
>>>
>>>     LPA
>>>
>>>            + Web site: http://www.lpa.co.uk/
>>>            + Sales: <sales@lpa.co.uk>
>>>            + Tech support: <support@lpa.co.uk>
>>>
>>>     MasterProLog
>>>
>>>            + Formerly BIM ProLog
>>>
>>>     PDC Prolog
>>>
>>>            + PDC Prolog is the succesor to Turbo Prolog and the 
>>> predecessor
>>>              to Visual Prolog.
>>>
>>>     ProLog by BIM
>>>
>>>            + Currently MasterProLog
>>>
>>>     Quintus
>>>
>>>            + Web site: http://quintus.sics.se
>>>            + Mailing list: see
>>>              http://www.sics.se/isl/quintuswww/site/community.html
>>>            + Sales: <qpsales@sics.se>
>>>            + Tech support: <qpsupport@sics.se>
>>>
>>>     SICStus
>>>
>>>            + Web page: http://www.sics.se/sicstus
>>>            + Mailing list: see
>>>              http://www.sics.se/isl/sicstuswww/site/community.html
>>>            + Sales: <sicstus-request@sics.se>
>>>            + Tech support: <sicstus-support@sics.se>
>>>
>>>     Trinc / Trinc-Prolog
>>>
>>>            + Information: <info@trinc-prolog.com>
>>>            + Sales: <sales@trinc-prolog.com>
>>>            + Support: <support@trinc-prolog.com>
>>>
>>>     Turbo Prolog
>>>
>>>            + Turbo Prolog is the predecessor of PDC Prolog (see above).
>>>
>>>     Visual Prolog
>>>
>>>            + Web site: http://www.visual-prolog.com/
>>>            + Information: <sales@pdc.dk> (or <sales@visual-prolog.com>)
>>>            + Sales: <sales@pdc.dk> (or <sales@visual-prolog.com>)
>>>            + Tech support: <support@pdc.dk> (or
>>>              <support@visual-prolog.com>)
>>>
>>>     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, note that there are many different "Prologs" and other logic
>>>     programming languages available, all with different capabilities.
>>>
>>>     6. What are the recent developments?
>>>
>>>     There are some languages in development which do not have Prolog
>>>     syntax, but do subsume and generalize Prolog's logic programming
>>>     abilities.
>>>
>>>     Mercury
>>>
>>>            + Web site: http://www.mercury.cs.mu.oz.au/index.html
>>>
>>>     The Mozart Consortium:
>>>
>>>            + Web site: http://mozart.github.io/
>>>            + Mailing lists: <http://mozart.github.io/mailing-lists/>
>>>
>>>     Some other languages bring new developments while also supporting
>>>     Prolog syntax and functionality as an option:
>>>
>>>     Ciao
>>>
>>>            + Web site: http://www.clip.dia.fi.upm.es/Software
>>>            + Users' group: <ciao-users@clip.dia.fi.upm.es>
>>>            + Information: <ciao@clip.dia.fi.upm.es>
>>>            + Tech support: <ciao-bugs@clip.dia.fi.upm.es>
>>>
>>>     Logtalk
>>>
>>>            + Web site: http://logtalk.org/
>>>            + E-mail: Paulo Moura <pmoura@logtalk.org>
>>>            + Info: Open source object-oriented extension to Prolog
>>>              compatible with most Prolog compilers.
>>>
>>>     7. 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 news://comp.lang.prolog/ readers who 
>>> would
>>>     be glad to help people making a legitimate attempt to learn Prolog.
>>>
>>>     8. Can you suggest some books on Prolog?
>>>
>>>     The Prolog Resource Guide (see above) contains a listing of Prolog
>>>     books. It is maintained by Mark Kantrowitz
>>>     (<Mark.Kantrowitz@glinda.oz.cs.cmu.edu>), and posted periodically on
>>>     news://comp.lang.prolog.
>>>
>>>     Here are some of the most popular books on Prolog.
>>>
>>>     Introductory
>>>
>>>            + "Programming In Prolog". William F. Clocksin and 
>>> Christopher
>>>              S. Mellish. Springer-Verlag, 2003 (5th ed).
>>>            + "Prolog for Programmers". Feliks Kluzniak and Stanislaw
>>>              Szpakowicz. Academic Press, London, 1985, now available
>>>              without charge from
>>>              https://sites.google.com/site/prologforprogrammers/
>>>            + "Prolog Programming for Artificial Intelligence". Ivan 
>>> Bratko.
>>>              Addison-Wesley, 2001 (3rd ed).
>>>
>>>     Advanced
>>>
>>>            + "The Art of Prolog: Advanced Programming Techniques". Leon
>>>              Sterling and Ehud Shapiro. MIT Press, 1994 (2nd ed).
>>>            + "The Craft of Prolog". Richard A. O'Keefe. MIT Press, 1990.
>>>
>>>     Logic programming theory
>>>
>>>            + "Foundations of Logic Programming". John Lloyd.
>>>              Springer-Verlag, 1988 (2nd ed).
>>>            + "Logic, Programming and Prolog". Ulf Nilsson and Jan
>>>              Maluszynski. Originally published by John Wiley & Sons Ltd
>>>              (2nd ed. 1995) and now available without charge from
>>>              http://www.ida.liu.se/~ulfni/lpp
>>>
>>>     Expert Systems
>>>
>>>            + "Building Expert Systems in Prolog". Dennis Merritt.
>>>              Springer-Verlag, 1989. HTML & PDF versions available from
>>>              http://www.amzi.com/ExpertSystemsInProlog
>>>
>>>     9. Are there any WWW archives of comp.lang.prolog ?
>>>
>>>     Yes, there are: Google Groups has archives of 
>>> news://comp.lang.prolog/.
>>>     They can be found at
>>>     https://groups.google.com/forum/#!forum/comp.lang.prolog
>>>
>>>     10. How can I get the ISO Prolog standard? Where can I go for more
>>>     information about it?
>>>
>>>     You can obtain the approved international standards from your 
>>> national
>>>     member body or directly from ISO (http://www.iso.org).
>>>
>>>     The working group on Prolog standardisation is ISO/IEC 
>>> JTC1/SC22/WG17
>>>     (http://www.sju.edu/~jhodgson/wg17/).
>>>
>>>     Contacts:
>>>
>>>            + Convenor of WG17: Ulrich Neumerkel
>>>              (<ulrich@mips.complang.tuwien.ac.at>)
>>>
>>>     Further literature: "Prolog: The Standard (Reference manual)", P.
>>>     Deransart, A. Ed-Dbali, L. Cervoni, Springer Verlag (1996). Extra
>>>     information can be found on
>>>     http://pauillac.inria.fr/~deransar/prolog/docs.html
>>>
>>> http://www-2.cs.cmu.edu/afs/cs.cmu.edu/project/ai-repository/ai/lang/pr
>>>     olog/doc/standard/ contains the December 1991 draft, the March 1993
>>>     draft, Michael Covington's summary of it, and Richard O'Keefe's 1984
>>>     Prolog standard draft.
>>>
>>>     http://www.complang.tuwien.ac.at/ulrich/iso-prolog/ ISO Prolog works
>>>     and related material by the convenor of WG17.
>>>
>>>     For questions about the standard, use this newsgroup or 
>>> Stackoverflow.
>>>
>>>     11. 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). The
>>>     book is out of print, and available online at
>>>     http://wambook.sourceforge.net.
>>>
>>>     12. Is there a WWW page on logic programming?
>>>
>>>     Yes, there is one by Jonathan Bowen; the URL is
>>>     http://www.afm.sbu.ac.uk/logic-prog/. He invites us to mail him at
>>>     <jonathan.bowen@sbu.ac.uk> with any relevant information for 
>>> inclusion.
>>>
>>>     A collection of artifacts from logic programming languages beginning
>>>     with Marseille Prolog is available from
>>>     http://www.softwarepreservation.org/projects/prolog/index.html
>>>
>>>     A large amount of Prolog code is available from the CMU AI 
>>> Repository:
>>> http://www.cs.cmu.edu/afs/cs/project/ai-repository/ai/lang/prolog/0.htm
>>>     l
>>>
>>>     Recently, Stackoverflow has become a valuable resource for Prolog
>>>     questions and answers: 
>>> http://stackoverflow.com/questions/tagged/prolog
>>>
>>>     Another community resource is the #prolog IRC channel on
>>>     irc.libera.chat.
>>>
>>>     13. Can I do Internet/WWW programming with Prolog?
>>>
>>>     Prolog is very suitable for this task. Several commercial and free
>>>     implementations include special support for it. A page 
>>> specifically on
>>>     this topic (including some tutorials) is maintained at
>>>     http://www.clip.dia.fi.upm.es/lpnet/lpnet.html. A public-domain 
>>> library
>>>     exists (PiLLoW) for several popular Prolog systems which helps in 
>>> the
>>>     task. See: http://www.clip.dia.fi.upm.es/Software/pillow/
>>>
>>>     14. Is there a WWW page with some tutorials on Prolog?
>>>
>>>     Beginner level:
>>>
>>>            + Adventure in Prolog:
>>>              http://www.amzi.com/AdventureInProlog/advfrtop.htm
>>>            + On-line guide to Prolog Programming:
>>>              http://kti.ms.mff.cuni.cz/~bartak/prolog/index.html
>>>            + Prolog Programming, A First Course:
>>>              http://computing.unn.ac.uk/staff/cgpb4/prologbook/book.html
>>>            + Learn Prolog Now!: http://www.learnprolognow.org
>>>
>>>     Intermediate to advanced level:
>>>
>>>            + https://skolemmachines.org/ThePrologTutorial/
>>>
>>>     15. How do I edit Prolog code?
>>>
>>>     Emacs and VIM ship with basic support for Prolog. A much improved 
>>> Emacs
>>>     mode is maintained by Stefan Bruda and available from
>>>     https://bruda.ca/emacs/prolog_mode_for_emacs
>>>
>>>     Logtalk ships with various editing services for many common editors,
>>>     also usable for Prolog.
>>>
>>>     SWI Prolog has a built-in Emacs clone called PceEmacs. There are 
>>> also
>>>     Emacs definitions that let you evaluate embedded queries:
>>>     https://www.metalevel.at/ediprolog/. An SWI Prolog programming
>>>     environment suitable for schools is available from
>>>     http://lernen.bildung.hessen.de/informatik/swiprolog/indexe.htm
>>>
>>>     A Prolog plug-in for the "Eclipse"-IDE is available from:
>>>     http://eclipse.ime.usp.br/projetos/grad/plugin-prolog/index.html
>>>
>>>     A sophisticated integrated editing and teaching environment with
>>>     declarative debugging, termination analysis and many 
>>> visualisations is
>>>     available from http://www.complang.tuwien.ac.at/ulrich/gupu/
>>>
>>>     16. How do I publish Prolog code?
>>>
>>>     Logtalk ships with support for various syntax highlighters, also 
>>> usable
>>>     for Prolog. These include support for Pygments (used e.g. on Trac 
>>> and
>>>     GitHub), Rouge (use e.g. in GitLab), GeSHi (used e.g. on Wikis), 
>>> minted
>>>     and texments LaTeX packages (e.g. source code listings), Google Code
>>>     Prettify, Source-highlight, Highlight, SyntaxHighlighter, and SHJS
>>>     (JavaScript highlighter for e.g. web pages).
>>>
>>> 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.
>>>
>>>     Special thanks to Jamie Andrews, Dirk-Jan Faber and Remko 
>>> Troncon, who
>>>     have been maintaining and posting the FAQ in the past.
>>>
>>
> 

[toc] | [prev] | [next] | [standalone]


#14657 — The cult of CLAM / Clojure rewrite utility (Was: Prolog can keep up with the AI Boom [Forget about CLAM])

FromMild Shock <janburse@fastmail.fm>
Date2025-07-13 15:43 +0200
SubjectThe cult of CLAM / Clojure rewrite utility (Was: Prolog can keep up with the AI Boom [Forget about CLAM])
Message-ID<1050d61$26q6h$1@solani.org>
In reply to#14656
Hi,

The cult of CLAM will devour its believers.
This is nicely seen here:

Answer depends on a clause position
https://github.com/mthom/scryer-prolog/discussions/3004

How do you want to provide a solution, more
and more desperate attempts like piling "dif"
indexing over it. Only because CLAM is currently

the refuge of academic frauds who have never
implemented a Prolog system, and don't know what
choice point elimination is, doesn't mean its

a good idea. Also what is the use case here?
Do you want to make a bidirectional Closure
rewrite utility like here:

Rewrite-clj is a library that can read, update and write Clojure
https://github.com/clj-commons/rewrite-clj/blob/main/doc/01-user-guide.adoc

Its actually quite charming utility that has a parser,
that reads a Clojure term including white space fillers
and comments. And might write back through an unparser,

in total when combined with zippers, this gives a simple
refactoring tool. Prolog community is now researching
CLAM for the next 30 years, because it wants the paser

and unparser in a single source of truth, bidirectionally
derived from some declarative description?

Congratulations!

Bye

Mild Shock schrieb:
> Hi,
> 
> I am still convinced Prolog can keep up with the AI Boom.
> Nothing listed in the Prolog FAQ is really useful to
> keep up with the AI Boom. Its nice historical footnote.
> 
> I don't think anything CLAM , i.e. constraint logic
> abstract machine, will hit the spot of the AI Boom.
> Prove me wrong if you can. Autodiff with CLAM, holy
> 
> cow what a nonsense...
> 
> Bye
> 
> Mild Shock schrieb:
>> Hi,
>>
>> BTW: I have red taped www.jekejeke.ch on
>> Wayback Machine . Red Taping is a legal
>> process which took a few steps, like E-mail
>>
>> verification and DNS verifcation, I had to provide the
>> whole history that I owned www.jekejeke.ch, and it
>> is not temporary , its irreversible, since I do not
>>
>> intend to remove the red tape. But the "red tape"
>> metaphor is spot on. The content is not actually
>> deleted from their servers. It is made inaccessible
>>
>> to the public. So certain institution if there is a
>> need might still access it. But if I am run over by
>> a tram tomorrow, not sure whether I have a good
>>
>> Software-Escrow for Jekejeke Prolog. Currently
>> you can assume that my company XLOG Technologies AG
>> is resposible for carrying out or delegating the
>>
>> Software-Escrow of Jekejeke Prolog. And the company
>> still exists, it exists in active form, unlike some
>> other Prolog involved companies.
>>
>> Bye
>>
>> Mild Shock schrieb:
>>> Amzi! Prolog just tells me:
>>>
>>> This Web site will be closing on 6/19/2026.
>>> Dennis Merritt is finally retiring!
>>>
>>> https://www.amzi.com/
>>>
>>> And here he writes:
>>>
>>> I used to earn my living writing and selling software.
>>> My company was AmziLogic LLC, and sold Prolog
>>> and Prolog-based software.
>>>
>>> https://denniscmerritt.com/amzi-inc/
>>>
>>> So who is the benevolent Software-Escrow. Problem
>>> is even if there are lovely Prolog books from Amzi!
>>> The world might tick differently now,
>>>
>>> USA in strong competition over AI with China,
>>> AGI already nocking on the door.
>>>
>>> Markus Triska schrieb:
>>>>                   Frequently Asked Questions - comp.lang.prolog
>>>>
>>>>     Last-modified: 2022-02-24
>>>>     Last-changes: Update link to tutorial by J.R. Fisher. Geoffrey 
>>>> Churchill.
>>>>
>>>> Markus Triska (Mar. 2 2007 - ... )
>>>>
>>>> Remko Troncon (Jan. 6 2002 - Mar. 2 2007)
>>>>
>>>> Dirk-Jan Faber (Feb. 1 1999 - Jan. 6 2002)
>>>>
>>>> Jamie Andrews (Aug 26 1992 - Oct. 16 1997)
>>>>       
>>>> __________________________________________________________________
>>>>
>>>>       General Information: This article contains the answers to some
>>>>       Frequently Asked Questions (FAQ) often seen in
>>>>       news://comp.lang.prolog/. It is posted (twice a month, 
>>>> currently on
>>>>       the 2nd 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://www.logic.at/prolog/faq/
>>>>
>>>>       Please send questions about the FAQ and updates to
>>>>       <triska@logic.at>.
>>>>
>>>>     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 or send in
>>>>     contributions, check http://www.cs.nmsu.edu/ALP/ or contact
>>>>
>>>>     Sandro Etalle <etalle@cs.utwente.nl>
>>>>
>>>>     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 used to be
>>>>     posted periodically to news://comp.lang.prolog.
>>>>
>>>>     2. Where can I get a free Prolog for system X (PC, Mac, Unix or 
>>>> other)?
>>>>
>>>>     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 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.)
>>>>
>>>>     ALF (Algebraic Logic Functional language)
>>>>
>>>>            + Platforms: UNIX
>>>>            + Available: Unknown
>>>>            + E-mail: Rudolf Opalla
>>>>              <opalla@julien.informatik.uni-dortmund.de>
>>>>            + Info: WAM-based language with narrowing/rewriting
>>>>
>>>>     Amzi! Prolog + Logic Server
>>>>
>>>>            + Platforms: Window, Linux and Solaris
>>>>            + Available: http://www.amzi.com/download/
>>>>            + E-mail: <info@amzi.com>
>>>>            + Info: Registration is compulsory, except for the Free
>>>>              Academic/Personal/Evaluation License.
>>>>
>>>>     Aquarius Prolog 1.0
>>>>
>>>>            + Platforms: UNIX
>>>>            + Available: 
>>>> http://www.info.ucl.ac.be/people/PVR/aquarius.html
>>>>            + Info: High performance, commercial functionality except
>>>>              debugging and modules.
>>>>
>>>>     Argo Prolog v.1.1
>>>>
>>>>            + Platforms: Solaris 1.x and HP-UX 9.x
>>>>            + Available: Unknown
>>>>            + Contact: Takao Doi <doi@csk.co.jp>
>>>>
>>>>     Arity/Prolog32
>>>>
>>>>            + Platforms: Win32
>>>>            + Available: https://github.com/Peter-Gabel/ArityProlog32
>>>>            + Info: Arity/Prolog32 provides a complete Prolog 
>>>> programming
>>>>              environment in which you can write, debug, and run Prolog
>>>>              programs in 32-bit Windows environments (95/98/NT/2000).
>>>>              Arity/Prolog32 is a powerful, highly optimized, and 
>>>> extended
>>>>              version of the logic programming language Prolog.
>>>>              Arity/Prolog32 is a complete compiler and interpreter 
>>>> written
>>>>              in Prolog, C, and Assembly language and is a superset of
>>>>              Clocksin and Mellish Prolog.
>>>>
>>>>     B-Prolog 8.1
>>>>
>>>>            + Platforms: Win32, Solaris, SunOS, UNIX, FreeBSD and Linux
>>>>            + Available: http://www.probp.com/
>>>>            + E-mail: Neng-Fa Zhou <support@probp.com>
>>>>            + Info: Free of charge for individual users.
>>>>
>>>>     BinProlog 7.0
>>>>
>>>>            + Platforms: Windows 95/98/NT, Linux and all major Unix
>>>>              platforms.
>>>>            + Available: https://code.google.com/archive/p/binprolog/
>>>>            + Info: Download free evaluation copies and see online 
>>>> demos.
>>>>              Inexpensive Educational licensing available.Has built-in
>>>>              networking, multi-threading, mobile code and distributed
>>>>              blackboards. Supports BinNet Internet Programming Tool 
>>>> kit.
>>>>
>>>>     Brain Aid Prolog (BAP) v1.4
>>>>
>>>>            + Platforms: Transputer systems
>>>>            + Info: BAP is a parallel prolog system for Transputer 
>>>> systems.
>>>>              Available under a Berkely style of copyright.
>>>>
>>>>     C#Prolog
>>>>
>>>>            + Platforms: Win32, UNIX
>>>>            + Available: http://sourceforge.net/projects/cs-prolog/
>>>>            + E-mail: John Pool <j.pool@ision.nl>
>>>>            + Info: A Prolog interpreter written in C#. Can easily be
>>>>              integrated in C# programs. Characteristics: reliable 
>>>> and quite
>>>>              fast beta version, command line interface, builtin DCG,
>>>>              XML-predicates, persistent predicates (using Firebird 
>>>> RDBMS),
>>>>              extendible.
>>>>
>>>>     Ciao 1.4
>>>>
>>>>            + Platforms: Linux, Win32 (95/98/NT), Solaris, SunOS, 
>>>> UNIX in
>>>>              general.
>>>>            + Available: http://ciao-lang.org
>>>>            + E-mail: Developers <ciao@clip.dia.fi.upm.es>, Users
>>>>              <ciao-users@clip.dia.fi.upm.es>
>>>>            + Info: Next generation LP/CLP system. Commercial 
>>>> functionality,
>>>>              but freely available w/source. ISO-Prolog + modules,
>>>>              networking, multi-threading, clp(r), clp(q), interfaces 
>>>> (Java,
>>>>              C, tcltk, WWW, databases/ODBC, ...), functions, 
>>>> higher-order,
>>>>              records, persistence, objects, assertions (types, 
>>>> modes, ...),
>>>>              source debugger, auto-documenter, static debugger, and 
>>>> more.
>>>>
>>>>     clp(FD)
>>>>
>>>>            + Platforms: UNIX
>>>>            + Contact: Daniel Diaz <daniel.diaz@inria.fr>
>>>>            + Info: Constraint logic programming over finite domains.
>>>>              Requires GNU C v.2.4.5 or higher.
>>>>
>>>>     clp(FD,S)
>>>>
>>>>            + Platforms: UNIX
>>>>            + Contact: Yan Georget <Yan.Georget@inria.fr>
>>>>            + Info: Requires GNU C (gcc) version 2.4.5. or higher.
>>>>
>>>>     CLP(R)
>>>>
>>>>            + Platforms: UNIX
>>>>            + Available: E-mail request from Joxan Jaffar
>>>>              <joxan@watson.ibm.com>.
>>>>            + Info: Constraint logic programming language, for 
>>>> academic and
>>>>              research purposes only.
>>>>
>>>>     CxProlog
>>>>
>>>>            + Platforms: UNIX, MacOS X, Windows
>>>>            + Available: http://ctp.di.fct.unl.pt/~amd/cxprolog/
>>>>            + Info: Open source (GPL) implementation supporting Unicode,
>>>>              threads, sockets, processes, contexts, imperative data
>>>>              structures, and interfaces with C/C++, Java, and wxWidgets
>>>>            + Contact: Artur Miguel Dias <amd@fct.unl.pt>
>>>>
>>>>     ECLiPSe Constraint Logic Programming System, subsuming Prolog.
>>>>
>>>>            + Platforms: Solaris, Linux, Linux/Alpha, Mac OS X, Windows
>>>>            + Available: http://eclipseclp.org or
>>>>              http://www.sourceforge.net/projects/eclipse-clp
>>>>            + Info: ECLiPSe is a Prolog and Constraint Programming 
>>>> platform
>>>>              with a long history and has been open-source since Sept 
>>>> 2006.
>>>>            + License: MPL
>>>>
>>>>     IF Prolog V5.3
>>>>
>>>>            + Platforms: Windows 95/98/NT/2000/XP, Linux, Solaris, AIX,
>>>>              HP-UX and other UNIX platforms
>>>>            + Available: http://www.ifcomputer.de/Products/Prolog/
>>>>            + E-mail: <info@ifcomputer.de>
>>>>            + Info: IF Prolog is a commercial Prolog system with 
>>>> interfaces
>>>>              to C/C++, Java, sockets, Windows events and a COM 
>>>> servers. A
>>>>              graphical debugger allows step-forward, step backward
>>>>              debugging of Prolog code. A static module concept 
>>>> allows many
>>>>              additional errors to be detected at compile time. 
>>>> Constraint
>>>>              Programming (for finite domains, intervals and booleans 
>>>> using
>>>>              global constraints and linear optimisation).
>>>>            + License: Free evaluation copies and inexpensive 
>>>> educational
>>>>              licensing available.
>>>>
>>>>     GNU Prolog
>>>>
>>>>            + Platforms: Many Unixes, Windows, MacOS X
>>>>            + Available: http://www.gprolog.org/
>>>>            + E-mail: Daniel Diaz <daniel.diaz@inria.fr>
>>>>
>>>>     Jinni 2.27
>>>>
>>>>            + Platforms: Java-based
>>>>            + Available: https://github.com/heathmanb/JinniProlog
>>>>            + Info: Multi-threaded, Java based Prolog interpreter with
>>>>              built-in networking, distributed blackboards and mobile 
>>>> code
>>>>              (inexpensive shareware licensing available).
>>>>
>>>>     JIProlog
>>>>
>>>>            + Platforms: Java-based
>>>>            + Available: http://www.jiprolog.com/
>>>>            + Info: Java Internet Prolog is a cross-platform pure 
>>>> Java 100%
>>>>              prolog interpreter that supplies Java world with the 
>>>> power of
>>>>              prolog language and provides prolog language with a 
>>>> technology
>>>>              to implement new predicates in Java.
>>>>
>>>>     KLIC
>>>>
>>>>            + Platforms: UNIX
>>>>            + Info: ICOT Free Software. Concurrent logic programming. 
>>>> Tested
>>>>              on Sparcs, DEC 7000, Gateway P5-60.
>>>>            + Contact: <ifs@icot.or.jp>
>>>>
>>>>     LPA Win-Prolog, demo version
>>>>
>>>>            + Platforms: Windows
>>>>            + Available: Available from http://www.lpa.co.uk/ind_dow.htm
>>>>
>>>>     MINERVA
>>>>
>>>>            + Platforms: Java
>>>>            + Info: Proprietary commercial ISO-Prolog Compiler in 
>>>> 100% Java
>>>>              support for web programming, XML, servlets, applets,
>>>>              standalones. Free evaluation license.
>>>>
>>>>     Modular SB-Prolog (= SB-Prolog version 3.1 plus modules)
>>>>
>>>>            + Platforms: SPARC, DECstation, MIPS, HP 9000 series, Sun 3.
>>>>            + Info: Copy-lefted.
>>>>
>>>>     Open Prolog
>>>>
>>>>            + Platforms: Apple Macintosh
>>>>            + Available: http://www.cs.tcd.ie/open-prolog/
>>>>            + E-mail: <brady@cs.tcd.ie>. (Michael Brady).
>>>>
>>>>     Poplog Prolog
>>>>
>>>>            + Platforms: Various Unixes, including Sun, Dec Alpha, HP 
>>>> and
>>>>              many others. Also a Win32 version is available. Sources
>>>>              available for other combinations.
>>>>            + Available: At the Free Poplog Web/FTP site, including full
>>>>              sources
>>>>              http://www.cs.bham.ac.uk/research/poplog/freepoplog.html
>>>>            + E-mail: queries may be posted to news://comp.lang.pop/, 
>>>> or to
>>>>              <pop-forum@cs.bham.ac.uk> or <A.Sloman@cs.bham.ac.uk> 
>>>> (Last
>>>>              resort!)
>>>>            + Info: Robust incremental compiler, part of the 
>>>> multi-language
>>>>              Poplog system (including Common Lisp, Pop-11 and 
>>>> Standard ML).
>>>>              Unix, Linux & VMS versions include full support for X 
>>>> window
>>>>              facilities/Motif. More information at
>>>>              http://www.cs.bham.ac.uk/research/poplog/poplog.info.html
>>>>              Licence modelled on XFree86. Can be freely distributed, 
>>>> though
>>>>              copyright is owned by Sussex University and ISL.
>>>>
>>>>     PIE2
>>>>
>>>>            + Platforms: Unknown
>>>>            + Available: On CompuServe in the AIEXPERT forum, 
>>>> interpreter
>>>>              and examples in PIE2.ZIP, documentation in PIEDOC.ZIP.
>>>>            + E-mail: Brent Ruggles <ruggles@shell.com>
>>>>
>>>>     QuProlog
>>>>
>>>>            + Platforms: UNIX, Linux, beta for MAC
>>>>            + Available:
>>>>              http://www.itee.uq.edu.au/~pjr/HomePages/QuPrologHome.html
>>>>            + E-mail: <pjr@itee.uq.edu.au>
>>>>            + Info: Extended WAM with support for quantifiers and
>>>>              substitutions, multi-threaded, high-level communication.
>>>>
>>>>     Scryer Prolog
>>>>
>>>>            + Platforms: Unix, Linux, Windows and Mac
>>>>            + Available: https://github.com/mthom/scryer-prolog
>>>>            + Info: A modern Prolog system written mostly in Rust.
>>>>
>>>>     Strawberry Prolog
>>>>
>>>>            + Platforms: Windows 95/NT, plans for UNIX and Macintosh
>>>>            + Available: http://www.dobrev.com/
>>>>            + E-mail: <dimiter@dobrev.com>
>>>>
>>>>     SWI Prolog
>>>>
>>>>            + Platforms: Binaries for Linux, Windows 
>>>> (NT/2000/XP/Vista) and
>>>>              Mac OS X (darwin). Sources: ANSI-C, both 32 and 64-bit
>>>>              machines, compiles on almost all Unix systems and more.
>>>>            + Available: http://www.swi-prolog.org
>>>>            + Info: Complete, ISO and Edinburgh standard, common
>>>>              optimizations, GC including atoms. Portable graphics, 
>>>> multiple
>>>>              threads, constraints, comprehensive libraries for 
>>>> (semantic)
>>>>              web programming, Unicode, source-level debugger, advanced
>>>>              syntax colouring
>>>>            + License: Simplified BSD. Run license/0 for more 
>>>> information.
>>>>
>>>>     Tau Prolog
>>>>
>>>>            + Platforms: Web-based
>>>>            + Available: http://tau-prolog.org/
>>>>            + Info: An open source Prolog interpreter in JavaScript.
>>>>
>>>>     Trinc-Prolog
>>>>
>>>>            + Platforms: Windows 95/98/NT 4.0, plans for Windows 
>>>> 2000, Linux
>>>>              and Sun Solaris
>>>>            + E-mail: <info@trinc-prolog.com>
>>>>
>>>>     Visual Prolog
>>>>
>>>>            + Platforms: Win32
>>>>            + Available: http://www.visual-prolog.com
>>>>            + Info: Includes all the facilities necessary to write 
>>>> mission
>>>>              critical commercial-grade applications. Fully visual
>>>>              development environment. Open architecture. 
>>>> Object-oriented.
>>>>              Built-in database system and ODBC support. Visual Prolog
>>>>              Personal Edition is available on a freeware license.
>>>>
>>>>     wamcc
>>>>
>>>>            + Platforms: UNIX
>>>>            + Info: Compiler which translates Prolog to C via WAM.
>>>>              Debuggers. Requires GNU C v.2.4.5 or higher.
>>>>            + Contact: Daniel Diaz <daniel.diaz@inria.fr>
>>>>
>>>>     XGP
>>>>
>>>>            + Platforms: Apple Macintosh OS X, 10.2.3+
>>>>            + Available: http://xgp.sourceforge.net/
>>>>            + Info: XGP is an open source (GPL) integrated development
>>>>              environment with user interface and graphics support 
>>>> based on
>>>>              gprolog and Cocoa under Macintosh OS X.
>>>>
>>>>     XSB
>>>>
>>>>            + Platforms: Many, including SunOS, Linux and Windows
>>>>            + Available: http://xsb.sourceforge.net/
>>>>            + E-mail: <xsb-users@lists.sourceforge.net>
>>>>            + Info: system with SLG-resolution, HiLog syntax, and
>>>>              unification factoring.
>>>>
>>>>     Yap
>>>>
>>>>            + Platforms: UNIX-based platforms and Windows
>>>>            + Available: https://github.com/vscosta/yap-6.3
>>>>            + E-mail: Vitor Santos Costa <vsc@ncc.up.pt>
>>>>            + Info: Yap is entirely written in C and Prolog and 
>>>> should be
>>>>              portable to most 32-bit and 64-bit Unix based platforms. A
>>>>              Windows port is also available. Yap4.2 is distributed 
>>>> under
>>>>              Perl's artistic license and can be freely distributed.
>>>>
>>>>     3. What commercial systems are available? What about systems 
>>>> available
>>>>     for a price from research institutions?
>>>>
>>>>     Many commercial systems are listed in the Prolog Resource Guide. 
>>>> The
>>>>     Resource Guide also lists many systems which are not exactly
>>>>     "commercial", but available for a price from research 
>>>> institutions. 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 Prolog Resource Guide hasn't been updated lately, but 
>>>> nevertheless
>>>>     still contains some valuable information. It can be found at
>>>> http://www-2.cs.cmu.edu/Groups/AI/html/faqs/lang/prolog/prg/top.html.
>>>>
>>>>     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.
>>>>
>>>>     ALS (Applied Logic Systems)
>>>>
>>>>            + Web site: http://alsprolog.com
>>>>
>>>>     Amzi! inc.
>>>>
>>>>            + Web site: http://www.amzi.com
>>>>            + Information: <info@amzi.com>
>>>>            + Sales: <sales@amzi.com>
>>>>            + Support: <support@amzi.com>
>>>>
>>>>     Arity/Prolog32
>>>>
>>>>            + Web site: https://github.com/Peter-Gabel/ArityProlog32
>>>>
>>>>     Ciao, PiLLoW, WebDB, etc.
>>>>
>>>>            + Web site: http://www.clip.dia.fi.upm.es/Software
>>>>            + Users' group: <ciao-users@clip.dia.fi.upm.es>
>>>>            + Information: <ciao@clip.dia.fi.upm.es>
>>>>            + Tech support: <ciao-bugs@clip.dia.fi.upm.es>
>>>>
>>>>     COSYTEC (CHIP V5)
>>>>
>>>>            + Web site: http://www.cosytec.com
>>>>            + Information: <info@cosytec.com> (or .fr)
>>>>            + Tech Support: <support@cosytec.com> (or .fr)
>>>>
>>>>     ECLiPSe
>>>>
>>>>            + Web site: http://eclipseclp.org
>>>>            + Users' group: <eclipse-clp-users@lists.sf.net>
>>>>            + Tech support: <http://eclipseclp.org/bugs.html>
>>>>            + Support contracts: <info@coninfer.com>
>>>>
>>>>     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>
>>>>
>>>>     GNU Prolog
>>>>
>>>>            + Web site: http://www.gprolog.org/
>>>>            + Users' group: <users-prolog-request@gnu.org>
>>>>            + Bug reports: <bug-prolog@gnu.org>
>>>>
>>>>     LPA
>>>>
>>>>            + Web site: http://www.lpa.co.uk/
>>>>            + Sales: <sales@lpa.co.uk>
>>>>            + Tech support: <support@lpa.co.uk>
>>>>
>>>>     MasterProLog
>>>>
>>>>            + Formerly BIM ProLog
>>>>
>>>>     PDC Prolog
>>>>
>>>>            + PDC Prolog is the succesor to Turbo Prolog and the 
>>>> predecessor
>>>>              to Visual Prolog.
>>>>
>>>>     ProLog by BIM
>>>>
>>>>            + Currently MasterProLog
>>>>
>>>>     Quintus
>>>>
>>>>            + Web site: http://quintus.sics.se
>>>>            + Mailing list: see
>>>>              http://www.sics.se/isl/quintuswww/site/community.html
>>>>            + Sales: <qpsales@sics.se>
>>>>            + Tech support: <qpsupport@sics.se>
>>>>
>>>>     SICStus
>>>>
>>>>            + Web page: http://www.sics.se/sicstus
>>>>            + Mailing list: see
>>>>              http://www.sics.se/isl/sicstuswww/site/community.html
>>>>            + Sales: <sicstus-request@sics.se>
>>>>            + Tech support: <sicstus-support@sics.se>
>>>>
>>>>     Trinc / Trinc-Prolog
>>>>
>>>>            + Information: <info@trinc-prolog.com>
>>>>            + Sales: <sales@trinc-prolog.com>
>>>>            + Support: <support@trinc-prolog.com>
>>>>
>>>>     Turbo Prolog
>>>>
>>>>            + Turbo Prolog is the predecessor of PDC Prolog (see above).
>>>>
>>>>     Visual Prolog
>>>>
>>>>            + Web site: http://www.visual-prolog.com/
>>>>            + Information: <sales@pdc.dk> (or <sales@visual-prolog.com>)
>>>>            + Sales: <sales@pdc.dk> (or <sales@visual-prolog.com>)
>>>>            + Tech support: <support@pdc.dk> (or
>>>>              <support@visual-prolog.com>)
>>>>
>>>>     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, note that there are many different "Prologs" and other logic
>>>>     programming languages available, all with different capabilities.
>>>>
>>>>     6. What are the recent developments?
>>>>
>>>>     There are some languages in development which do not have Prolog
>>>>     syntax, but do subsume and generalize Prolog's logic programming
>>>>     abilities.
>>>>
>>>>     Mercury
>>>>
>>>>            + Web site: http://www.mercury.cs.mu.oz.au/index.html
>>>>
>>>>     The Mozart Consortium:
>>>>
>>>>            + Web site: http://mozart.github.io/
>>>>            + Mailing lists: <http://mozart.github.io/mailing-lists/>
>>>>
>>>>     Some other languages bring new developments while also supporting
>>>>     Prolog syntax and functionality as an option:
>>>>
>>>>     Ciao
>>>>
>>>>            + Web site: http://www.clip.dia.fi.upm.es/Software
>>>>            + Users' group: <ciao-users@clip.dia.fi.upm.es>
>>>>            + Information: <ciao@clip.dia.fi.upm.es>
>>>>            + Tech support: <ciao-bugs@clip.dia.fi.upm.es>
>>>>
>>>>     Logtalk
>>>>
>>>>            + Web site: http://logtalk.org/
>>>>            + E-mail: Paulo Moura <pmoura@logtalk.org>
>>>>            + Info: Open source object-oriented extension to Prolog
>>>>              compatible with most Prolog compilers.
>>>>
>>>>     7. 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 news://comp.lang.prolog/ readers who 
>>>> would
>>>>     be glad to help people making a legitimate attempt to learn Prolog.
>>>>
>>>>     8. Can you suggest some books on Prolog?
>>>>
>>>>     The Prolog Resource Guide (see above) contains a listing of Prolog
>>>>     books. It is maintained by Mark Kantrowitz
>>>>     (<Mark.Kantrowitz@glinda.oz.cs.cmu.edu>), and posted 
>>>> periodically on
>>>>     news://comp.lang.prolog.
>>>>
>>>>     Here are some of the most popular books on Prolog.
>>>>
>>>>     Introductory
>>>>
>>>>            + "Programming In Prolog". William F. Clocksin and 
>>>> Christopher
>>>>              S. Mellish. Springer-Verlag, 2003 (5th ed).
>>>>            + "Prolog for Programmers". Feliks Kluzniak and Stanislaw
>>>>              Szpakowicz. Academic Press, London, 1985, now available
>>>>              without charge from
>>>>              https://sites.google.com/site/prologforprogrammers/
>>>>            + "Prolog Programming for Artificial Intelligence". Ivan 
>>>> Bratko.
>>>>              Addison-Wesley, 2001 (3rd ed).
>>>>
>>>>     Advanced
>>>>
>>>>            + "The Art of Prolog: Advanced Programming Techniques". Leon
>>>>              Sterling and Ehud Shapiro. MIT Press, 1994 (2nd ed).
>>>>            + "The Craft of Prolog". Richard A. O'Keefe. MIT Press, 
>>>> 1990.
>>>>
>>>>     Logic programming theory
>>>>
>>>>            + "Foundations of Logic Programming". John Lloyd.
>>>>              Springer-Verlag, 1988 (2nd ed).
>>>>            + "Logic, Programming and Prolog". Ulf Nilsson and Jan
>>>>              Maluszynski. Originally published by John Wiley & Sons Ltd
>>>>              (2nd ed. 1995) and now available without charge from
>>>>              http://www.ida.liu.se/~ulfni/lpp
>>>>
>>>>     Expert Systems
>>>>
>>>>            + "Building Expert Systems in Prolog". Dennis Merritt.
>>>>              Springer-Verlag, 1989. HTML & PDF versions available from
>>>>              http://www.amzi.com/ExpertSystemsInProlog
>>>>
>>>>     9. Are there any WWW archives of comp.lang.prolog ?
>>>>
>>>>     Yes, there are: Google Groups has archives of 
>>>> news://comp.lang.prolog/.
>>>>     They can be found at
>>>>     https://groups.google.com/forum/#!forum/comp.lang.prolog
>>>>
>>>>     10. How can I get the ISO Prolog standard? Where can I go for more
>>>>     information about it?
>>>>
>>>>     You can obtain the approved international standards from your 
>>>> national
>>>>     member body or directly from ISO (http://www.iso.org).
>>>>
>>>>     The working group on Prolog standardisation is ISO/IEC 
>>>> JTC1/SC22/WG17
>>>>     (http://www.sju.edu/~jhodgson/wg17/).
>>>>
>>>>     Contacts:
>>>>
>>>>            + Convenor of WG17: Ulrich Neumerkel
>>>>              (<ulrich@mips.complang.tuwien.ac.at>)
>>>>
>>>>     Further literature: "Prolog: The Standard (Reference manual)", P.
>>>>     Deransart, A. Ed-Dbali, L. Cervoni, Springer Verlag (1996). Extra
>>>>     information can be found on
>>>>     http://pauillac.inria.fr/~deransar/prolog/docs.html
>>>>
>>>> http://www-2.cs.cmu.edu/afs/cs.cmu.edu/project/ai-repository/ai/lang/pr
>>>>     olog/doc/standard/ contains the December 1991 draft, the March 1993
>>>>     draft, Michael Covington's summary of it, and Richard O'Keefe's 
>>>> 1984
>>>>     Prolog standard draft.
>>>>
>>>>     http://www.complang.tuwien.ac.at/ulrich/iso-prolog/ ISO Prolog 
>>>> works
>>>>     and related material by the convenor of WG17.
>>>>
>>>>     For questions about the standard, use this newsgroup or 
>>>> Stackoverflow.
>>>>
>>>>     11. 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). The
>>>>     book is out of print, and available online at
>>>>     http://wambook.sourceforge.net.
>>>>
>>>>     12. Is there a WWW page on logic programming?
>>>>
>>>>     Yes, there is one by Jonathan Bowen; the URL is
>>>>     http://www.afm.sbu.ac.uk/logic-prog/. He invites us to mail him at
>>>>     <jonathan.bowen@sbu.ac.uk> with any relevant information for 
>>>> inclusion.
>>>>
>>>>     A collection of artifacts from logic programming languages 
>>>> beginning
>>>>     with Marseille Prolog is available from
>>>>     http://www.softwarepreservation.org/projects/prolog/index.html
>>>>
>>>>     A large amount of Prolog code is available from the CMU AI 
>>>> Repository:
>>>> http://www.cs.cmu.edu/afs/cs/project/ai-repository/ai/lang/prolog/0.htm
>>>>     l
>>>>
>>>>     Recently, Stackoverflow has become a valuable resource for Prolog
>>>>     questions and answers: 
>>>> http://stackoverflow.com/questions/tagged/prolog
>>>>
>>>>     Another community resource is the #prolog IRC channel on
>>>>     irc.libera.chat.
>>>>
>>>>     13. Can I do Internet/WWW programming with Prolog?
>>>>
>>>>     Prolog is very suitable for this task. Several commercial and free
>>>>     implementations include special support for it. A page 
>>>> specifically on
>>>>     this topic (including some tutorials) is maintained at
>>>>     http://www.clip.dia.fi.upm.es/lpnet/lpnet.html. A public-domain 
>>>> library
>>>>     exists (PiLLoW) for several popular Prolog systems which helps 
>>>> in the
>>>>     task. See: http://www.clip.dia.fi.upm.es/Software/pillow/
>>>>
>>>>     14. Is there a WWW page with some tutorials on Prolog?
>>>>
>>>>     Beginner level:
>>>>
>>>>            + Adventure in Prolog:
>>>>              http://www.amzi.com/AdventureInProlog/advfrtop.htm
>>>>            + On-line guide to Prolog Programming:
>>>>              http://kti.ms.mff.cuni.cz/~bartak/prolog/index.html
>>>>            + Prolog Programming, A First Course:
>>>>              
>>>> http://computing.unn.ac.uk/staff/cgpb4/prologbook/book.html
>>>>            + Learn Prolog Now!: http://www.learnprolognow.org
>>>>
>>>>     Intermediate to advanced level:
>>>>
>>>>            + https://skolemmachines.org/ThePrologTutorial/
>>>>
>>>>     15. How do I edit Prolog code?
>>>>
>>>>     Emacs and VIM ship with basic support for Prolog. A much 
>>>> improved Emacs
>>>>     mode is maintained by Stefan Bruda and available from
>>>>     https://bruda.ca/emacs/prolog_mode_for_emacs
>>>>
>>>>     Logtalk ships with various editing services for many common 
>>>> editors,
>>>>     also usable for Prolog.
>>>>
>>>>     SWI Prolog has a built-in Emacs clone called PceEmacs. There are 
>>>> also
>>>>     Emacs definitions that let you evaluate embedded queries:
>>>>     https://www.metalevel.at/ediprolog/. An SWI Prolog programming
>>>>     environment suitable for schools is available from
>>>>     http://lernen.bildung.hessen.de/informatik/swiprolog/indexe.htm
>>>>
>>>>     A Prolog plug-in for the "Eclipse"-IDE is available from:
>>>>     http://eclipse.ime.usp.br/projetos/grad/plugin-prolog/index.html
>>>>
>>>>     A sophisticated integrated editing and teaching environment with
>>>>     declarative debugging, termination analysis and many 
>>>> visualisations is
>>>>     available from http://www.complang.tuwien.ac.at/ulrich/gupu/
>>>>
>>>>     16. How do I publish Prolog code?
>>>>
>>>>     Logtalk ships with support for various syntax highlighters, also 
>>>> usable
>>>>     for Prolog. These include support for Pygments (used e.g. on 
>>>> Trac and
>>>>     GitHub), Rouge (use e.g. in GitLab), GeSHi (used e.g. on Wikis), 
>>>> minted
>>>>     and texments LaTeX packages (e.g. source code listings), Google 
>>>> Code
>>>>     Prettify, Source-highlight, Highlight, SyntaxHighlighter, and SHJS
>>>>     (JavaScript highlighter for e.g. web pages).
>>>>
>>>> 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.
>>>>
>>>>     Special thanks to Jamie Andrews, Dirk-Jan Faber and Remko 
>>>> Troncon, who
>>>>     have been maintaining and posting the FAQ in the past.
>>>>
>>>
>>
> 

[toc] | [prev] | [next] | [standalone]


#14659 — Australian Longest Straight Road in Prolog (Was: Clojure hasn't gained momentum [Martin Odersky 2025 Talk])

FromMild Shock <janburse@fastmail.fm>
Date2025-07-14 16:11 +0200
SubjectAustralian Longest Straight Road in Prolog (Was: Clojure hasn't gained momentum [Martin Odersky 2025 Talk])
Message-ID<1053362$27ctr$1@solani.org>
In reply to#14657
Do these units packages define rounding? Is this correct:

https://www.shutterstock.com/de/image-photo/road-sign-longest-straight-australia-548866177

I think one way its correct:

145.6 km ÷ 1.609344 km/mile = 90.47 miles

The other way its incorrect:

90 miles × 1.609344 km/mile = 144.84 km

Mild Shock schrieb:
> Hi,
> 
> So how does academic purity compare to industrial
> success? Well this talk by Martin Odersky has some
> interesting slides comparing past and present:
> 
> Evolving Scala by Martin Odersky | Scalar Conference 2025
> https://www.youtube.com/watch?v=DI0NOh9r1f8
> 
> Where Scala ranked in 2014, versus where Scala
> ranks in 2025. Haskell gone, Clojure gone.
> 
> LoL
> 
> Bye

[toc] | [prev] | [next] | [standalone]


#14660 — Can CLAM do bidrectional rounding? (Was: Australian Longest Straight Road in Prolog)

FromMild Shock <janburse@fastmail.fm>
Date2025-07-14 16:15 +0200
SubjectCan CLAM do bidrectional rounding? (Was: Australian Longest Straight Road in Prolog)
Message-ID<10533em$27d2s$1@solani.org>
In reply to#14659
The conversion factor in the units database is:

?- qeval(X*1 is mi/km).
X = 1.609344.

I had first used 1.60934, but then used
1.609344. But I think this here is not a
symmetric answer, and a symmetric answer
using constraint logic programming

maybe impossible:

?- qeval((145.6*km =:= 90*usc:mile+quantity Eps, SIEps is Eps in km)).
Eps = 0.4716455897558234*kind_of(isq:length)[usc:mile],
SIEps = 0.7590399999999958*kind_of(isq:length)[si:kilo(si:metre)].

Do you have intervals associated with
units, so you can write “in km”?

I computes 145.6*km - 90*mile in terms of km, so it computes:

/* Windows 11 Calcultator */
145.6 - 90*1.609344 = 0.75904

/* SWI-Prolog Evaluator */
?- X is 145.6 - 90*1.609344.
X = 0.7590399999999988

So to be correctly rounded to one digit after
the period, the eps would need to be smaller. But for
the other direction, whether the conversion
from km to mile was correct, I guess a

2nd query would be needed. But still I would
be interested whether constraint logic programming
can answer such questions in one query, like
whether CLAM (the idea of Constraint Logic

Abstract Machines) has a rounding bidirectionality?
Giving new momentum to the dream that
CLAM is a silver bullet.

Mild Shock schrieb:
> Do these units packages define rounding? Is this correct:
> 
> https://www.shutterstock.com/de/image-photo/road-sign-longest-straight-australia-548866177 
> 
> 
> I think one way its correct:
> 
> 145.6 km ÷ 1.609344 km/mile = 90.47 miles
> 
> The other way its incorrect:
> 
> 90 miles × 1.609344 km/mile = 144.84 km
> 
> Mild Shock schrieb:
>> Hi,
>>
>> So how does academic purity compare to industrial
>> success? Well this talk by Martin Odersky has some
>> interesting slides comparing past and present:
>>
>> Evolving Scala by Martin Odersky | Scalar Conference 2025
>> https://www.youtube.com/watch?v=DI0NOh9r1f8
>>
>> Where Scala ranked in 2014, versus where Scala
>> ranks in 2025. Haskell gone, Clojure gone.
>>
>> LoL
>>
>> Bye

[toc] | [prev] | [next] | [standalone]


#14661 — Pointed intervals to the rescue [Make CLAM great again] (Was: Can CLAM do bidrectional rounding?)

FromMild Shock <janburse@fastmail.fm>
Date2025-07-15 01:26 +0200
SubjectPointed intervals to the rescue [Make CLAM great again] (Was: Can CLAM do bidrectional rounding?)
Message-ID<10543ms$27vr6$1@solani.org>
In reply to#14660
Hi,

My recent thinking is such rounding could have
a place in CLAM (Constraint Logic Abstract Machine),
as part of some interval arithmetic. Particularly
pointed intervals, like 145.6 is basically the
interval [145.55 .. 145.65),

including the lower bound excluding the upper bound.
The value 145.6 is associated with the interval, and
not some midpoint, has to do that the rounded value is
the associated point. So all values in the interval round to

the associated rounded value. But I didn’t do a thorough
research yet. It would basically give a different rationalize
and associated interval computation from input, a more business
like rationalize that requires that the number

scanner tokenizer also records the number of fractional
digits in the input. So that for example 90 and 90.0 are
not the same when it comes to rationalize and associated
interval computation from some given input.

Most fixnum rounding have midpoint = rounded value:

145.6 ~~> [145.55 .. 145.65) ~~> (145.55 + 145.65) = 145.6
90    ~~> [89.5 ..90.5)      ~~> (89.5 + 90.5) = 90

But some rounding, like for example automatically
choosing a scale, i.e. going from bytes to kilo bytes,
mega bytes, giga bytes etc.., many directory listings
can do that when they show a file size,

I guess the associated intervals and
rounded values are more exotic.

Bye

Mild Shock schrieb:
> The conversion factor in the units database is:
> 
> ?- qeval(X*1 is mi/km).
> X = 1.609344.
> 
> I had first used 1.60934, but then used
> 1.609344. But I think this here is not a
> symmetric answer, and a symmetric answer
> using constraint logic programming
> 
> maybe impossible:
> 
> ?- qeval((145.6*km =:= 90*usc:mile+quantity Eps, SIEps is Eps in km)).
> Eps = 0.4716455897558234*kind_of(isq:length)[usc:mile],
> SIEps = 0.7590399999999958*kind_of(isq:length)[si:kilo(si:metre)].
> 
> Do you have intervals associated with
> units, so you can write “in km”?
> 
> I computes 145.6*km - 90*mile in terms of km, so it computes:
> 
> /* Windows 11 Calcultator */
> 145.6 - 90*1.609344 = 0.75904
> 
> /* SWI-Prolog Evaluator */
> ?- X is 145.6 - 90*1.609344.
> X = 0.7590399999999988
> 
> So to be correctly rounded to one digit after
> the period, the eps would need to be smaller. But for
> the other direction, whether the conversion
> from km to mile was correct, I guess a
> 
> 2nd query would be needed. But still I would
> be interested whether constraint logic programming
> can answer such questions in one query, like
> whether CLAM (the idea of Constraint Logic
> 
> Abstract Machines) has a rounding bidirectionality?
> Giving new momentum to the dream that
> CLAM is a silver bullet.
> 
> Mild Shock schrieb:
>> Do these units packages define rounding? Is this correct:
>>
>> https://www.shutterstock.com/de/image-photo/road-sign-longest-straight-australia-548866177 
>>
>>
>> I think one way its correct:
>>
>> 145.6 km ÷ 1.609344 km/mile = 90.47 miles
>>
>> The other way its incorrect:
>>
>> 90 miles × 1.609344 km/mile = 144.84 km
>>
>> Mild Shock schrieb:
>>> Hi,
>>>
>>> So how does academic purity compare to industrial
>>> success? Well this talk by Martin Odersky has some
>>> interesting slides comparing past and present:
>>>
>>> Evolving Scala by Martin Odersky | Scalar Conference 2025
>>> https://www.youtube.com/watch?v=DI0NOh9r1f8
>>>
>>> Where Scala ranked in 2014, versus where Scala
>>> ranks in 2025. Haskell gone, Clojure gone.
>>>
>>> LoL
>>>
>>> Bye
> 

[toc] | [prev] | [next] | [standalone]


#14662 — Corr. Re: Pointed intervals to the rescue [Make CLAM great again] (Was: Can CLAM do bidrectional rounding?)

FromMild Shock <janburse@fastmail.fm>
Date2025-07-15 01:28 +0200
SubjectCorr. Re: Pointed intervals to the rescue [Make CLAM great again] (Was: Can CLAM do bidrectional rounding?)
Message-ID<10543q1$27vr6$2@solani.org>
In reply to#14661
Typo: Forgot division by two:

 > 145.6 ~~> [145.55 .. 145.65) ~~> (145.55 + 145.65) = 145.6
 > 90    ~~> [89.5 ..90.5)      ~~> (89.5 + 90.5) = 90

Should read:

145.6 ~~> [145.55 .. 145.65) ~~> (145.55 + 145.65)/2 = 145.6
90    ~~> [89.5 ..90.5)      ~~> (89.5 + 90.5)/2 = 90


Mild Shock schrieb:
> Hi,
> 
> My recent thinking is such rounding could have
> a place in CLAM (Constraint Logic Abstract Machine),
> as part of some interval arithmetic. Particularly
> pointed intervals, like 145.6 is basically the
> interval [145.55 .. 145.65),
> 
> including the lower bound excluding the upper bound.
> The value 145.6 is associated with the interval, and
> not some midpoint, has to do that the rounded value is
> the associated point. So all values in the interval round to
> 
> the associated rounded value. But I didn’t do a thorough
> research yet. It would basically give a different rationalize
> and associated interval computation from input, a more business
> like rationalize that requires that the number
> 
> scanner tokenizer also records the number of fractional
> digits in the input. So that for example 90 and 90.0 are
> not the same when it comes to rationalize and associated
> interval computation from some given input.
> 
> Most fixnum rounding have midpoint = rounded value:
> 
> 145.6 ~~> [145.55 .. 145.65) ~~> (145.55 + 145.65) = 145.6
> 90    ~~> [89.5 ..90.5)      ~~> (89.5 + 90.5) = 90
> 
> But some rounding, like for example automatically
> choosing a scale, i.e. going from bytes to kilo bytes,
> mega bytes, giga bytes etc.., many directory listings
> can do that when they show a file size,
> 
> I guess the associated intervals and
> rounded values are more exotic.
> 
> Bye
> 
> Mild Shock schrieb:
>> The conversion factor in the units database is:
>>
>> ?- qeval(X*1 is mi/km).
>> X = 1.609344.
>>
>> I had first used 1.60934, but then used
>> 1.609344. But I think this here is not a
>> symmetric answer, and a symmetric answer
>> using constraint logic programming
>>
>> maybe impossible:
>>
>> ?- qeval((145.6*km =:= 90*usc:mile+quantity Eps, SIEps is Eps in km)).
>> Eps = 0.4716455897558234*kind_of(isq:length)[usc:mile],
>> SIEps = 0.7590399999999958*kind_of(isq:length)[si:kilo(si:metre)].
>>
>> Do you have intervals associated with
>> units, so you can write “in km”?
>>
>> I computes 145.6*km - 90*mile in terms of km, so it computes:
>>
>> /* Windows 11 Calcultator */
>> 145.6 - 90*1.609344 = 0.75904
>>
>> /* SWI-Prolog Evaluator */
>> ?- X is 145.6 - 90*1.609344.
>> X = 0.7590399999999988
>>
>> So to be correctly rounded to one digit after
>> the period, the eps would need to be smaller. But for
>> the other direction, whether the conversion
>> from km to mile was correct, I guess a
>>
>> 2nd query would be needed. But still I would
>> be interested whether constraint logic programming
>> can answer such questions in one query, like
>> whether CLAM (the idea of Constraint Logic
>>
>> Abstract Machines) has a rounding bidirectionality?
>> Giving new momentum to the dream that
>> CLAM is a silver bullet.
>>
>> Mild Shock schrieb:
>>> Do these units packages define rounding? Is this correct:
>>>
>>> https://www.shutterstock.com/de/image-photo/road-sign-longest-straight-australia-548866177 
>>>
>>>
>>> I think one way its correct:
>>>
>>> 145.6 km ÷ 1.609344 km/mile = 90.47 miles
>>>
>>> The other way its incorrect:
>>>
>>> 90 miles × 1.609344 km/mile = 144.84 km
>>>
>>> Mild Shock schrieb:
>>>> Hi,
>>>>
>>>> So how does academic purity compare to industrial
>>>> success? Well this talk by Martin Odersky has some
>>>> interesting slides comparing past and present:
>>>>
>>>> Evolving Scala by Martin Odersky | Scalar Conference 2025
>>>> https://www.youtube.com/watch?v=DI0NOh9r1f8
>>>>
>>>> Where Scala ranked in 2014, versus where Scala
>>>> ranks in 2025. Haskell gone, Clojure gone.
>>>>
>>>> LoL
>>>>
>>>> Bye
>>
> 

[toc] | [prev] | [next] | [standalone]


#14987 — Sleepy Joe SWI-Prolog still waiting for a PR (Was: Prolog can keep up with the AI Boom [Forget about CLAM])

FromMild Shock <janburse@fastmail.fm>
Date2025-11-12 01:26 +0100
SubjectSleepy Joe SWI-Prolog still waiting for a PR (Was: Prolog can keep up with the AI Boom [Forget about CLAM])
Message-ID<10f0k8h$aoi3$1@solani.org>
In reply to#14656
Hi,

How it started:
===============

Sleepy Joe SWI-Prolog still waiting for a PR,
that include/3, this predicate:

https://www.swi-prolog.org/pldoc/man?predicate=include/3

Can ahead of time compile lambda expressions
from library(yall). This does not yet work.

And anything else will also not work, especially
things where a meta predicate declaration is missing.

How its going:
===============

After I posted arrow functions ahead of time
compilation, for Doglog Player, which is

much simpler than the LogNonsenseTalk nonsense
of library(yall). There was first silence.

Now they are a little nervous:

Yall lambdas in asserted clauses
https://swi-prolog.discourse.group/t/yall-lambdas-in-asserted-clauses/9374

Advice:
=======

Why not tap into Boris the Loris and the Nazi Retard Julio?

Bye

Mild Shock schrieb:
> Hi,
> 
> I am still convinced Prolog can keep up with the AI Boom.
> Nothing listed in the Prolog FAQ is really useful to
> keep up with the AI Boom. Its nice historical footnote.
> 
> I don't think anything CLAM , i.e. constraint logic
> abstract machine, will hit the spot of the AI Boom.
> Prove me wrong if you can. Autodiff with CLAM, holy
> 
> cow what a nonsense...
> 
> Bye
> 
> Mild Shock schrieb:
>> Hi,
>>
>> BTW: I have red taped www.jekejeke.ch on
>> Wayback Machine . Red Taping is a legal
>> process which took a few steps, like E-mail
>>
>> verification and DNS verifcation, I had to provide the
>> whole history that I owned www.jekejeke.ch, and it
>> is not temporary , its irreversible, since I do not
>>
>> intend to remove the red tape. But the "red tape"
>> metaphor is spot on. The content is not actually
>> deleted from their servers. It is made inaccessible
>>
>> to the public. So certain institution if there is a
>> need might still access it. But if I am run over by
>> a tram tomorrow, not sure whether I have a good
>>
>> Software-Escrow for Jekejeke Prolog. Currently
>> you can assume that my company XLOG Technologies AG
>> is resposible for carrying out or delegating the
>>
>> Software-Escrow of Jekejeke Prolog. And the company
>> still exists, it exists in active form, unlike some
>> other Prolog involved companies.
>>
>> Bye
>>
>> Mild Shock schrieb:
>>> Amzi! Prolog just tells me:
>>>
>>> This Web site will be closing on 6/19/2026.
>>> Dennis Merritt is finally retiring!
>>>
>>> https://www.amzi.com/
>>>
>>> And here he writes:
>>>
>>> I used to earn my living writing and selling software.
>>> My company was AmziLogic LLC, and sold Prolog
>>> and Prolog-based software.
>>>
>>> https://denniscmerritt.com/amzi-inc/
>>>
>>> So who is the benevolent Software-Escrow. Problem
>>> is even if there are lovely Prolog books from Amzi!
>>> The world might tick differently now,
>>>
>>> USA in strong competition over AI with China,
>>> AGI already nocking on the door.
>>>
>>> Markus Triska schrieb:
>>>>                   Frequently Asked Questions - comp.lang.prolog
>>>>
>>>>     Last-modified: 2022-02-24
>>>>     Last-changes: Update link to tutorial by J.R. Fisher. Geoffrey 
>>>> Churchill.
>>>>
>>>> Markus Triska (Mar. 2 2007 - ... )
>>>>
>>>> Remko Troncon (Jan. 6 2002 - Mar. 2 2007)
>>>>
>>>> Dirk-Jan Faber (Feb. 1 1999 - Jan. 6 2002)
>>>>
>>>> Jamie Andrews (Aug 26 1992 - Oct. 16 1997)
>>>>       
>>>> __________________________________________________________________
>>>>
>>>>       General Information: This article contains the answers to some
>>>>       Frequently Asked Questions (FAQ) often seen in
>>>>       news://comp.lang.prolog/. It is posted (twice a month, 
>>>> currently on
>>>>       the 2nd 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://www.logic.at/prolog/faq/
>>>>
>>>>       Please send questions about the FAQ and updates to
>>>>       <triska@logic.at>.
>>>>
>>>>     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 or send in
>>>>     contributions, check http://www.cs.nmsu.edu/ALP/ or contact
>>>>
>>>>     Sandro Etalle <etalle@cs.utwente.nl>
>>>>
>>>>     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 used to be
>>>>     posted periodically to news://comp.lang.prolog.
>>>>
>>>>     2. Where can I get a free Prolog for system X (PC, Mac, Unix or 
>>>> other)?
>>>>
>>>>     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 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.)
>>>>
>>>>     ALF (Algebraic Logic Functional language)
>>>>
>>>>            + Platforms: UNIX
>>>>            + Available: Unknown
>>>>            + E-mail: Rudolf Opalla
>>>>              <opalla@julien.informatik.uni-dortmund.de>
>>>>            + Info: WAM-based language with narrowing/rewriting
>>>>
>>>>     Amzi! Prolog + Logic Server
>>>>
>>>>            + Platforms: Window, Linux and Solaris
>>>>            + Available: http://www.amzi.com/download/
>>>>            + E-mail: <info@amzi.com>
>>>>            + Info: Registration is compulsory, except for the Free
>>>>              Academic/Personal/Evaluation License.
>>>>
>>>>     Aquarius Prolog 1.0
>>>>
>>>>            + Platforms: UNIX
>>>>            + Available: 
>>>> http://www.info.ucl.ac.be/people/PVR/aquarius.html
>>>>            + Info: High performance, commercial functionality except
>>>>              debugging and modules.
>>>>
>>>>     Argo Prolog v.1.1
>>>>
>>>>            + Platforms: Solaris 1.x and HP-UX 9.x
>>>>            + Available: Unknown
>>>>            + Contact: Takao Doi <doi@csk.co.jp>
>>>>
>>>>     Arity/Prolog32
>>>>
>>>>            + Platforms: Win32
>>>>            + Available: https://github.com/Peter-Gabel/ArityProlog32
>>>>            + Info: Arity/Prolog32 provides a complete Prolog 
>>>> programming
>>>>              environment in which you can write, debug, and run Prolog
>>>>              programs in 32-bit Windows environments (95/98/NT/2000).
>>>>              Arity/Prolog32 is a powerful, highly optimized, and 
>>>> extended
>>>>              version of the logic programming language Prolog.
>>>>              Arity/Prolog32 is a complete compiler and interpreter 
>>>> written
>>>>              in Prolog, C, and Assembly language and is a superset of
>>>>              Clocksin and Mellish Prolog.
>>>>
>>>>     B-Prolog 8.1
>>>>
>>>>            + Platforms: Win32, Solaris, SunOS, UNIX, FreeBSD and Linux
>>>>            + Available: http://www.probp.com/
>>>>            + E-mail: Neng-Fa Zhou <support@probp.com>
>>>>            + Info: Free of charge for individual users.
>>>>
>>>>     BinProlog 7.0
>>>>
>>>>            + Platforms: Windows 95/98/NT, Linux and all major Unix
>>>>              platforms.
>>>>            + Available: https://code.google.com/archive/p/binprolog/
>>>>            + Info: Download free evaluation copies and see online 
>>>> demos.
>>>>              Inexpensive Educational licensing available.Has built-in
>>>>              networking, multi-threading, mobile code and distributed
>>>>              blackboards. Supports BinNet Internet Programming Tool 
>>>> kit.
>>>>
>>>>     Brain Aid Prolog (BAP) v1.4
>>>>
>>>>            + Platforms: Transputer systems
>>>>            + Info: BAP is a parallel prolog system for Transputer 
>>>> systems.
>>>>              Available under a Berkely style of copyright.
>>>>
>>>>     C#Prolog
>>>>
>>>>            + Platforms: Win32, UNIX
>>>>            + Available: http://sourceforge.net/projects/cs-prolog/
>>>>            + E-mail: John Pool <j.pool@ision.nl>
>>>>            + Info: A Prolog interpreter written in C#. Can easily be
>>>>              integrated in C# programs. Characteristics: reliable 
>>>> and quite
>>>>              fast beta version, command line interface, builtin DCG,
>>>>              XML-predicates, persistent predicates (using Firebird 
>>>> RDBMS),
>>>>              extendible.
>>>>
>>>>     Ciao 1.4
>>>>
>>>>            + Platforms: Linux, Win32 (95/98/NT), Solaris, SunOS, 
>>>> UNIX in
>>>>              general.
>>>>            + Available: http://ciao-lang.org
>>>>            + E-mail: Developers <ciao@clip.dia.fi.upm.es>, Users
>>>>              <ciao-users@clip.dia.fi.upm.es>
>>>>            + Info: Next generation LP/CLP system. Commercial 
>>>> functionality,
>>>>              but freely available w/source. ISO-Prolog + modules,
>>>>              networking, multi-threading, clp(r), clp(q), interfaces 
>>>> (Java,
>>>>              C, tcltk, WWW, databases/ODBC, ...), functions, 
>>>> higher-order,
>>>>              records, persistence, objects, assertions (types, 
>>>> modes, ...),
>>>>              source debugger, auto-documenter, static debugger, and 
>>>> more.
>>>>
>>>>     clp(FD)
>>>>
>>>>            + Platforms: UNIX
>>>>            + Contact: Daniel Diaz <daniel.diaz@inria.fr>
>>>>            + Info: Constraint logic programming over finite domains.
>>>>              Requires GNU C v.2.4.5 or higher.
>>>>
>>>>     clp(FD,S)
>>>>
>>>>            + Platforms: UNIX
>>>>            + Contact: Yan Georget <Yan.Georget@inria.fr>
>>>>            + Info: Requires GNU C (gcc) version 2.4.5. or higher.
>>>>
>>>>     CLP(R)
>>>>
>>>>            + Platforms: UNIX
>>>>            + Available: E-mail request from Joxan Jaffar
>>>>              <joxan@watson.ibm.com>.
>>>>            + Info: Constraint logic programming language, for 
>>>> academic and
>>>>              research purposes only.
>>>>
>>>>     CxProlog
>>>>
>>>>            + Platforms: UNIX, MacOS X, Windows
>>>>            + Available: http://ctp.di.fct.unl.pt/~amd/cxprolog/
>>>>            + Info: Open source (GPL) implementation supporting Unicode,
>>>>              threads, sockets, processes, contexts, imperative data
>>>>              structures, and interfaces with C/C++, Java, and wxWidgets
>>>>            + Contact: Artur Miguel Dias <amd@fct.unl.pt>
>>>>
>>>>     ECLiPSe Constraint Logic Programming System, subsuming Prolog.
>>>>
>>>>            + Platforms: Solaris, Linux, Linux/Alpha, Mac OS X, Windows
>>>>            + Available: http://eclipseclp.org or
>>>>              http://www.sourceforge.net/projects/eclipse-clp
>>>>            + Info: ECLiPSe is a Prolog and Constraint Programming 
>>>> platform
>>>>              with a long history and has been open-source since Sept 
>>>> 2006.
>>>>            + License: MPL
>>>>
>>>>     IF Prolog V5.3
>>>>
>>>>            + Platforms: Windows 95/98/NT/2000/XP, Linux, Solaris, AIX,
>>>>              HP-UX and other UNIX platforms
>>>>            + Available: http://www.ifcomputer.de/Products/Prolog/
>>>>            + E-mail: <info@ifcomputer.de>
>>>>            + Info: IF Prolog is a commercial Prolog system with 
>>>> interfaces
>>>>              to C/C++, Java, sockets, Windows events and a COM 
>>>> servers. A
>>>>              graphical debugger allows step-forward, step backward
>>>>              debugging of Prolog code. A static module concept 
>>>> allows many
>>>>              additional errors to be detected at compile time. 
>>>> Constraint
>>>>              Programming (for finite domains, intervals and booleans 
>>>> using
>>>>              global constraints and linear optimisation).
>>>>            + License: Free evaluation copies and inexpensive 
>>>> educational
>>>>              licensing available.
>>>>
>>>>     GNU Prolog
>>>>
>>>>            + Platforms: Many Unixes, Windows, MacOS X
>>>>            + Available: http://www.gprolog.org/
>>>>            + E-mail: Daniel Diaz <daniel.diaz@inria.fr>
>>>>
>>>>     Jinni 2.27
>>>>
>>>>            + Platforms: Java-based
>>>>            + Available: https://github.com/heathmanb/JinniProlog
>>>>            + Info: Multi-threaded, Java based Prolog interpreter with
>>>>              built-in networking, distributed blackboards and mobile 
>>>> code
>>>>              (inexpensive shareware licensing available).
>>>>
>>>>     JIProlog
>>>>
>>>>            + Platforms: Java-based
>>>>            + Available: http://www.jiprolog.com/
>>>>            + Info: Java Internet Prolog is a cross-platform pure 
>>>> Java 100%
>>>>              prolog interpreter that supplies Java world with the 
>>>> power of
>>>>              prolog language and provides prolog language with a 
>>>> technology
>>>>              to implement new predicates in Java.
>>>>
>>>>     KLIC
>>>>
>>>>            + Platforms: UNIX
>>>>            + Info: ICOT Free Software. Concurrent logic programming. 
>>>> Tested
>>>>              on Sparcs, DEC 7000, Gateway P5-60.
>>>>            + Contact: <ifs@icot.or.jp>
>>>>
>>>>     LPA Win-Prolog, demo version
>>>>
>>>>            + Platforms: Windows
>>>>            + Available: Available from http://www.lpa.co.uk/ind_dow.htm
>>>>
>>>>     MINERVA
>>>>
>>>>            + Platforms: Java
>>>>            + Info: Proprietary commercial ISO-Prolog Compiler in 
>>>> 100% Java
>>>>              support for web programming, XML, servlets, applets,
>>>>              standalones. Free evaluation license.
>>>>
>>>>     Modular SB-Prolog (= SB-Prolog version 3.1 plus modules)
>>>>
>>>>            + Platforms: SPARC, DECstation, MIPS, HP 9000 series, Sun 3.
>>>>            + Info: Copy-lefted.
>>>>
>>>>     Open Prolog
>>>>
>>>>            + Platforms: Apple Macintosh
>>>>            + Available: http://www.cs.tcd.ie/open-prolog/
>>>>            + E-mail: <brady@cs.tcd.ie>. (Michael Brady).
>>>>
>>>>     Poplog Prolog
>>>>
>>>>            + Platforms: Various Unixes, including Sun, Dec Alpha, HP 
>>>> and
>>>>              many others. Also a Win32 version is available. Sources
>>>>              available for other combinations.
>>>>            + Available: At the Free Poplog Web/FTP site, including full
>>>>              sources
>>>>              http://www.cs.bham.ac.uk/research/poplog/freepoplog.html
>>>>            + E-mail: queries may be posted to news://comp.lang.pop/, 
>>>> or to
>>>>              <pop-forum@cs.bham.ac.uk> or <A.Sloman@cs.bham.ac.uk> 
>>>> (Last
>>>>              resort!)
>>>>            + Info: Robust incremental compiler, part of the 
>>>> multi-language
>>>>              Poplog system (including Common Lisp, Pop-11 and 
>>>> Standard ML).
>>>>              Unix, Linux & VMS versions include full support for X 
>>>> window
>>>>              facilities/Motif. More information at
>>>>              http://www.cs.bham.ac.uk/research/poplog/poplog.info.html
>>>>              Licence modelled on XFree86. Can be freely distributed, 
>>>> though
>>>>              copyright is owned by Sussex University and ISL.
>>>>
>>>>     PIE2
>>>>
>>>>            + Platforms: Unknown
>>>>            + Available: On CompuServe in the AIEXPERT forum, 
>>>> interpreter
>>>>              and examples in PIE2.ZIP, documentation in PIEDOC.ZIP.
>>>>            + E-mail: Brent Ruggles <ruggles@shell.com>
>>>>
>>>>     QuProlog
>>>>
>>>>            + Platforms: UNIX, Linux, beta for MAC
>>>>            + Available:
>>>>              http://www.itee.uq.edu.au/~pjr/HomePages/QuPrologHome.html
>>>>            + E-mail: <pjr@itee.uq.edu.au>
>>>>            + Info: Extended WAM with support for quantifiers and
>>>>              substitutions, multi-threaded, high-level communication.
>>>>
>>>>     Scryer Prolog
>>>>
>>>>            + Platforms: Unix, Linux, Windows and Mac
>>>>            + Available: https://github.com/mthom/scryer-prolog
>>>>            + Info: A modern Prolog system written mostly in Rust.
>>>>
>>>>     Strawberry Prolog
>>>>
>>>>            + Platforms: Windows 95/NT, plans for UNIX and Macintosh
>>>>            + Available: http://www.dobrev.com/
>>>>            + E-mail: <dimiter@dobrev.com>
>>>>
>>>>     SWI Prolog
>>>>
>>>>            + Platforms: Binaries for Linux, Windows 
>>>> (NT/2000/XP/Vista) and
>>>>              Mac OS X (darwin). Sources: ANSI-C, both 32 and 64-bit
>>>>              machines, compiles on almost all Unix systems and more.
>>>>            + Available: http://www.swi-prolog.org
>>>>            + Info: Complete, ISO and Edinburgh standard, common
>>>>              optimizations, GC including atoms. Portable graphics, 
>>>> multiple
>>>>              threads, constraints, comprehensive libraries for 
>>>> (semantic)
>>>>              web programming, Unicode, source-level debugger, advanced
>>>>              syntax colouring
>>>>            + License: Simplified BSD. Run license/0 for more 
>>>> information.
>>>>
>>>>     Tau Prolog
>>>>
>>>>            + Platforms: Web-based
>>>>            + Available: http://tau-prolog.org/
>>>>            + Info: An open source Prolog interpreter in JavaScript.
>>>>
>>>>     Trinc-Prolog
>>>>
>>>>            + Platforms: Windows 95/98/NT 4.0, plans for Windows 
>>>> 2000, Linux
>>>>              and Sun Solaris
>>>>            + E-mail: <info@trinc-prolog.com>
>>>>
>>>>     Visual Prolog
>>>>
>>>>            + Platforms: Win32
>>>>            + Available: http://www.visual-prolog.com
>>>>            + Info: Includes all the facilities necessary to write 
>>>> mission
>>>>              critical commercial-grade applications. Fully visual
>>>>              development environment. Open architecture. 
>>>> Object-oriented.
>>>>              Built-in database system and ODBC support. Visual Prolog
>>>>              Personal Edition is available on a freeware license.
>>>>
>>>>     wamcc
>>>>
>>>>            + Platforms: UNIX
>>>>            + Info: Compiler which translates Prolog to C via WAM.
>>>>              Debuggers. Requires GNU C v.2.4.5 or higher.
>>>>            + Contact: Daniel Diaz <daniel.diaz@inria.fr>
>>>>
>>>>     XGP
>>>>
>>>>            + Platforms: Apple Macintosh OS X, 10.2.3+
>>>>            + Available: http://xgp.sourceforge.net/
>>>>            + Info: XGP is an open source (GPL) integrated development
>>>>              environment with user interface and graphics support 
>>>> based on
>>>>              gprolog and Cocoa under Macintosh OS X.
>>>>
>>>>     XSB
>>>>
>>>>            + Platforms: Many, including SunOS, Linux and Windows
>>>>            + Available: http://xsb.sourceforge.net/
>>>>            + E-mail: <xsb-users@lists.sourceforge.net>
>>>>            + Info: system with SLG-resolution, HiLog syntax, and
>>>>              unification factoring.
>>>>
>>>>     Yap
>>>>
>>>>            + Platforms: UNIX-based platforms and Windows
>>>>            + Available: https://github.com/vscosta/yap-6.3
>>>>            + E-mail: Vitor Santos Costa <vsc@ncc.up.pt>
>>>>            + Info: Yap is entirely written in C and Prolog and 
>>>> should be
>>>>              portable to most 32-bit and 64-bit Unix based platforms. A
>>>>              Windows port is also available. Yap4.2 is distributed 
>>>> under
>>>>              Perl's artistic license and can be freely distributed.
>>>>
>>>>     3. What commercial systems are available? What about systems 
>>>> available
>>>>     for a price from research institutions?
>>>>
>>>>     Many commercial systems are listed in the Prolog Resource Guide. 
>>>> The
>>>>     Resource Guide also lists many systems which are not exactly
>>>>     "commercial", but available for a price from research 
>>>> institutions. 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 Prolog Resource Guide hasn't been updated lately, but 
>>>> nevertheless
>>>>     still contains some valuable information. It can be found at
>>>> http://www-2.cs.cmu.edu/Groups/AI/html/faqs/lang/prolog/prg/top.html.
>>>>
>>>>     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.
>>>>
>>>>     ALS (Applied Logic Systems)
>>>>
>>>>            + Web site: http://alsprolog.com
>>>>
>>>>     Amzi! inc.
>>>>
>>>>            + Web site: http://www.amzi.com
>>>>            + Information: <info@amzi.com>
>>>>            + Sales: <sales@amzi.com>
>>>>            + Support: <support@amzi.com>
>>>>
>>>>     Arity/Prolog32
>>>>
>>>>            + Web site: https://github.com/Peter-Gabel/ArityProlog32
>>>>
>>>>     Ciao, PiLLoW, WebDB, etc.
>>>>
>>>>            + Web site: http://www.clip.dia.fi.upm.es/Software
>>>>            + Users' group: <ciao-users@clip.dia.fi.upm.es>
>>>>            + Information: <ciao@clip.dia.fi.upm.es>
>>>>            + Tech support: <ciao-bugs@clip.dia.fi.upm.es>
>>>>
>>>>     COSYTEC (CHIP V5)
>>>>
>>>>            + Web site: http://www.cosytec.com
>>>>            + Information: <info@cosytec.com> (or .fr)
>>>>            + Tech Support: <support@cosytec.com> (or .fr)
>>>>
>>>>     ECLiPSe
>>>>
>>>>            + Web site: http://eclipseclp.org
>>>>            + Users' group: <eclipse-clp-users@lists.sf.net>
>>>>            + Tech support: <http://eclipseclp.org/bugs.html>
>>>>            + Support contracts: <info@coninfer.com>
>>>>
>>>>     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>
>>>>
>>>>     GNU Prolog
>>>>
>>>>            + Web site: http://www.gprolog.org/
>>>>            + Users' group: <users-prolog-request@gnu.org>
>>>>            + Bug reports: <bug-prolog@gnu.org>
>>>>
>>>>     LPA
>>>>
>>>>            + Web site: http://www.lpa.co.uk/
>>>>            + Sales: <sales@lpa.co.uk>
>>>>            + Tech support: <support@lpa.co.uk>
>>>>
>>>>     MasterProLog
>>>>
>>>>            + Formerly BIM ProLog
>>>>
>>>>     PDC Prolog
>>>>
>>>>            + PDC Prolog is the succesor to Turbo Prolog and the 
>>>> predecessor
>>>>              to Visual Prolog.
>>>>
>>>>     ProLog by BIM
>>>>
>>>>            + Currently MasterProLog
>>>>
>>>>     Quintus
>>>>
>>>>            + Web site: http://quintus.sics.se
>>>>            + Mailing list: see
>>>>              http://www.sics.se/isl/quintuswww/site/community.html
>>>>            + Sales: <qpsales@sics.se>
>>>>            + Tech support: <qpsupport@sics.se>
>>>>
>>>>     SICStus
>>>>
>>>>            + Web page: http://www.sics.se/sicstus
>>>>            + Mailing list: see
>>>>              http://www.sics.se/isl/sicstuswww/site/community.html
>>>>            + Sales: <sicstus-request@sics.se>
>>>>            + Tech support: <sicstus-support@sics.se>
>>>>
>>>>     Trinc / Trinc-Prolog
>>>>
>>>>            + Information: <info@trinc-prolog.com>
>>>>            + Sales: <sales@trinc-prolog.com>
>>>>            + Support: <support@trinc-prolog.com>
>>>>
>>>>     Turbo Prolog
>>>>
>>>>            + Turbo Prolog is the predecessor of PDC Prolog (see above).
>>>>
>>>>     Visual Prolog
>>>>
>>>>            + Web site: http://www.visual-prolog.com/
>>>>            + Information: <sales@pdc.dk> (or <sales@visual-prolog.com>)
>>>>            + Sales: <sales@pdc.dk> (or <sales@visual-prolog.com>)
>>>>            + Tech support: <support@pdc.dk> (or
>>>>              <support@visual-prolog.com>)
>>>>
>>>>     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, note that there are many different "Prologs" and other logic
>>>>     programming languages available, all with different capabilities.
>>>>
>>>>     6. What are the recent developments?
>>>>
>>>>     There are some languages in development which do not have Prolog
>>>>     syntax, but do subsume and generalize Prolog's logic programming
>>>>     abilities.
>>>>
>>>>     Mercury
>>>>
>>>>            + Web site: http://www.mercury.cs.mu.oz.au/index.html
>>>>
>>>>     The Mozart Consortium:
>>>>
>>>>            + Web site: http://mozart.github.io/
>>>>            + Mailing lists: <http://mozart.github.io/mailing-lists/>
>>>>
>>>>     Some other languages bring new developments while also supporting
>>>>     Prolog syntax and functionality as an option:
>>>>
>>>>     Ciao
>>>>
>>>>            + Web site: http://www.clip.dia.fi.upm.es/Software
>>>>            + Users' group: <ciao-users@clip.dia.fi.upm.es>
>>>>            + Information: <ciao@clip.dia.fi.upm.es>
>>>>            + Tech support: <ciao-bugs@clip.dia.fi.upm.es>
>>>>
>>>>     Logtalk
>>>>
>>>>            + Web site: http://logtalk.org/
>>>>            + E-mail: Paulo Moura <pmoura@logtalk.org>
>>>>            + Info: Open source object-oriented extension to Prolog
>>>>              compatible with most Prolog compilers.
>>>>
>>>>     7. 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 news://comp.lang.prolog/ readers who 
>>>> would
>>>>     be glad to help people making a legitimate attempt to learn Prolog.
>>>>
>>>>     8. Can you suggest some books on Prolog?
>>>>
>>>>     The Prolog Resource Guide (see above) contains a listing of Prolog
>>>>     books. It is maintained by Mark Kantrowitz
>>>>     (<Mark.Kantrowitz@glinda.oz.cs.cmu.edu>), and posted 
>>>> periodically on
>>>>     news://comp.lang.prolog.
>>>>
>>>>     Here are some of the most popular books on Prolog.
>>>>
>>>>     Introductory
>>>>
>>>>            + "Programming In Prolog". William F. Clocksin and 
>>>> Christopher
>>>>              S. Mellish. Springer-Verlag, 2003 (5th ed).
>>>>            + "Prolog for Programmers". Feliks Kluzniak and Stanislaw
>>>>              Szpakowicz. Academic Press, London, 1985, now available
>>>>              without charge from
>>>>              https://sites.google.com/site/prologforprogrammers/
>>>>            + "Prolog Programming for Artificial Intelligence". Ivan 
>>>> Bratko.
>>>>              Addison-Wesley, 2001 (3rd ed).
>>>>
>>>>     Advanced
>>>>
>>>>            + "The Art of Prolog: Advanced Programming Techniques". Leon
>>>>              Sterling and Ehud Shapiro. MIT Press, 1994 (2nd ed).
>>>>            + "The Craft of Prolog". Richard A. O'Keefe. MIT Press, 
>>>> 1990.
>>>>
>>>>     Logic programming theory
>>>>
>>>>            + "Foundations of Logic Programming". John Lloyd.
>>>>              Springer-Verlag, 1988 (2nd ed).
>>>>            + "Logic, Programming and Prolog". Ulf Nilsson and Jan
>>>>              Maluszynski. Originally published by John Wiley & Sons Ltd
>>>>              (2nd ed. 1995) and now available without charge from
>>>>              http://www.ida.liu.se/~ulfni/lpp
>>>>
>>>>     Expert Systems
>>>>
>>>>            + "Building Expert Systems in Prolog". Dennis Merritt.
>>>>              Springer-Verlag, 1989. HTML & PDF versions available from
>>>>              http://www.amzi.com/ExpertSystemsInProlog
>>>>
>>>>     9. Are there any WWW archives of comp.lang.prolog ?
>>>>
>>>>     Yes, there are: Google Groups has archives of 
>>>> news://comp.lang.prolog/.
>>>>     They can be found at
>>>>     https://groups.google.com/forum/#!forum/comp.lang.prolog
>>>>
>>>>     10. How can I get the ISO Prolog standard? Where can I go for more
>>>>     information about it?
>>>>
>>>>     You can obtain the approved international standards from your 
>>>> national
>>>>     member body or directly from ISO (http://www.iso.org).
>>>>
>>>>     The working group on Prolog standardisation is ISO/IEC 
>>>> JTC1/SC22/WG17
>>>>     (http://www.sju.edu/~jhodgson/wg17/).
>>>>
>>>>     Contacts:
>>>>
>>>>            + Convenor of WG17: Ulrich Neumerkel
>>>>              (<ulrich@mips.complang.tuwien.ac.at>)
>>>>
>>>>     Further literature: "Prolog: The Standard (Reference manual)", P.
>>>>     Deransart, A. Ed-Dbali, L. Cervoni, Springer Verlag (1996). Extra
>>>>     information can be found on
>>>>     http://pauillac.inria.fr/~deransar/prolog/docs.html
>>>>
>>>> http://www-2.cs.cmu.edu/afs/cs.cmu.edu/project/ai-repository/ai/lang/pr
>>>>     olog/doc/standard/ contains the December 1991 draft, the March 1993
>>>>     draft, Michael Covington's summary of it, and Richard O'Keefe's 
>>>> 1984
>>>>     Prolog standard draft.
>>>>
>>>>     http://www.complang.tuwien.ac.at/ulrich/iso-prolog/ ISO Prolog 
>>>> works
>>>>     and related material by the convenor of WG17.
>>>>
>>>>     For questions about the standard, use this newsgroup or 
>>>> Stackoverflow.
>>>>
>>>>     11. 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). The
>>>>     book is out of print, and available online at
>>>>     http://wambook.sourceforge.net.
>>>>
>>>>     12. Is there a WWW page on logic programming?
>>>>
>>>>     Yes, there is one by Jonathan Bowen; the URL is
>>>>     http://www.afm.sbu.ac.uk/logic-prog/. He invites us to mail him at
>>>>     <jonathan.bowen@sbu.ac.uk> with any relevant information for 
>>>> inclusion.
>>>>
>>>>     A collection of artifacts from logic programming languages 
>>>> beginning
>>>>     with Marseille Prolog is available from
>>>>     http://www.softwarepreservation.org/projects/prolog/index.html
>>>>
>>>>     A large amount of Prolog code is available from the CMU AI 
>>>> Repository:
>>>> http://www.cs.cmu.edu/afs/cs/project/ai-repository/ai/lang/prolog/0.htm
>>>>     l
>>>>
>>>>     Recently, Stackoverflow has become a valuable resource for Prolog
>>>>     questions and answers: 
>>>> http://stackoverflow.com/questions/tagged/prolog
>>>>
>>>>     Another community resource is the #prolog IRC channel on
>>>>     irc.libera.chat.
>>>>
>>>>     13. Can I do Internet/WWW programming with Prolog?
>>>>
>>>>     Prolog is very suitable for this task. Several commercial and free
>>>>     implementations include special support for it. A page 
>>>> specifically on
>>>>     this topic (including some tutorials) is maintained at
>>>>     http://www.clip.dia.fi.upm.es/lpnet/lpnet.html. A public-domain 
>>>> library
>>>>     exists (PiLLoW) for several popular Prolog systems which helps 
>>>> in the
>>>>     task. See: http://www.clip.dia.fi.upm.es/Software/pillow/
>>>>
>>>>     14. Is there a WWW page with some tutorials on Prolog?
>>>>
>>>>     Beginner level:
>>>>
>>>>            + Adventure in Prolog:
>>>>              http://www.amzi.com/AdventureInProlog/advfrtop.htm
>>>>            + On-line guide to Prolog Programming:
>>>>              http://kti.ms.mff.cuni.cz/~bartak/prolog/index.html
>>>>            + Prolog Programming, A First Course:
>>>>              
>>>> http://computing.unn.ac.uk/staff/cgpb4/prologbook/book.html
>>>>            + Learn Prolog Now!: http://www.learnprolognow.org
>>>>
>>>>     Intermediate to advanced level:
>>>>
>>>>            + https://skolemmachines.org/ThePrologTutorial/
>>>>
>>>>     15. How do I edit Prolog code?
>>>>
>>>>     Emacs and VIM ship with basic support for Prolog. A much 
>>>> improved Emacs
>>>>     mode is maintained by Stefan Bruda and available from
>>>>     https://bruda.ca/emacs/prolog_mode_for_emacs
>>>>
>>>>     Logtalk ships with various editing services for many common 
>>>> editors,
>>>>     also usable for Prolog.
>>>>
>>>>     SWI Prolog has a built-in Emacs clone called PceEmacs. There are 
>>>> also
>>>>     Emacs definitions that let you evaluate embedded queries:
>>>>     https://www.metalevel.at/ediprolog/. An SWI Prolog programming
>>>>     environment suitable for schools is available from
>>>>     http://lernen.bildung.hessen.de/informatik/swiprolog/indexe.htm
>>>>
>>>>     A Prolog plug-in for the "Eclipse"-IDE is available from:
>>>>     http://eclipse.ime.usp.br/projetos/grad/plugin-prolog/index.html
>>>>
>>>>     A sophisticated integrated editing and teaching environment with
>>>>     declarative debugging, termination analysis and many 
>>>> visualisations is
>>>>     available from http://www.complang.tuwien.ac.at/ulrich/gupu/
>>>>
>>>>     16. How do I publish Prolog code?
>>>>
>>>>     Logtalk ships with support for various syntax highlighters, also 
>>>> usable
>>>>     for Prolog. These include support for Pygments (used e.g. on 
>>>> Trac and
>>>>     GitHub), Rouge (use e.g. in GitLab), GeSHi (used e.g. on Wikis), 
>>>> minted
>>>>     and texments LaTeX packages (e.g. source code listings), Google 
>>>> Code
>>>>     Prettify, Source-highlight, Highlight, SyntaxHighlighter, and SHJS
>>>>     (JavaScript highlighter for e.g. web pages).
>>>>
>>>> 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.
>>>>
>>>>     Special thanks to Jamie Andrews, Dirk-Jan Faber and Remko 
>>>> Troncon, who
>>>>     have been maintaining and posting the FAQ in the past.
>>>>
>>>
>>
> 

[toc] | [prev] | [next] | [standalone]


#14988 — deep preprocessor =\= term_expansion and/or goal_expansion [SWI-Prolog dicts]

FromMild Shock <janburse@fastmail.fm>
Date2025-11-12 02:18 +0100
Subjectdeep preprocessor =\= term_expansion and/or goal_expansion [SWI-Prolog dicts]
Message-ID<10f0n8q$aq2q$1@solani.org>
In reply to#14987
Hi,

I am using the same "preprocessor" approach for
arrow functions in Dogelog Player, as sleepy joe
SWI-Prolog uses for SWI-Prolog dicts.

Take this SWI-Prolog dict example:

?- X = #{b:abc,a:123}
X = #{a:123,b:abc}

Where is the dict normalized?

- Not term_expansion: The dict is not
   normalized/sorted in term_expansion, since a
   Query is anyway not a fact or rule, that
   a term_expansion would deal with.

- Not goal_expansion: The dict is not
   normalized/sorted in goal_expansion, since
   although the above (=)/2 goal is indeed
   a goal, but the dict sits in an argument.

- Function_expansion: Some prolog systems
   call it function expansion. It can be used
   for dicts and function on dicts. I had function
   expansion also in formerly Jekejeke Prolog.

So for release 2.1.2 I didn't realize function expansion,
since the arrow functions were ahead of time compiled
in the compiler backend. But for release 2.1.3 there
is not a little function expansion framework in place,

so as to generate the interpretetive translation of
arrow functions. This allows to run arrow functions
with the based on ISO core standard witness
calculation [7.1.1.4] also outside the Dogelog

Player compiler backend ecosystem. Also the
interactive debugger is now based on the interpretative
version, and the same interactive debugger can run
outside of the Dogelog Player compiler backend ecosystem.

Proof of concept of this better portability is a
version of formerly Jekjeke Prolog, that is synced
with Dogelog Player except for the compiler backend.

Bye

P.S.: Scryer calls shallow preprocessor Syntactic macros
(term expansion & goal expansion). Function expansion makes the
preprocessor deep, going to every sub tree of the input tree.

But Prolog has a kind of history, dismissing the shallow
preprocessor in favor of a deep preprocessor. Like for
example this paper from 2002:

https://oa.upm.es/14610/1/HERME_REFWORKS_2005-2.pdf

Mild Shock schrieb:
> Hi,
> 
> How it started:
> ===============
> 
> Sleepy Joe SWI-Prolog still waiting for a PR,
> that include/3, this predicate:
> 
> https://www.swi-prolog.org/pldoc/man?predicate=include/3
> 
> Can ahead of time compile lambda expressions
> from library(yall). This does not yet work.
> 
> And anything else will also not work, especially
> things where a meta predicate declaration is missing.
> 
> How its going:
> ===============
> 
> After I posted arrow functions ahead of time
> compilation, for Doglog Player, which is
> 
> much simpler than the LogNonsenseTalk nonsense
> of library(yall). There was first silence.
> 
> Now they are a little nervous:
> 
> Yall lambdas in asserted clauses
> https://swi-prolog.discourse.group/t/yall-lambdas-in-asserted-clauses/9374
> 
> Advice:
> =======
> 
> Why not tap into Boris the Loris and the Nazi Retard Julio?
> 
> Bye
> 
> Mild Shock schrieb:
>> Hi,
>>
>> I am still convinced Prolog can keep up with the AI Boom.
>> Nothing listed in the Prolog FAQ is really useful to
>> keep up with the AI Boom. Its nice historical footnote.
>>
>> I don't think anything CLAM , i.e. constraint logic
>> abstract machine, will hit the spot of the AI Boom.
>> Prove me wrong if you can. Autodiff with CLAM, holy
>>
>> cow what a nonsense...
>>
>> Bye
>>
>> Mild Shock schrieb:
>>> Hi,
>>>
>>> BTW: I have red taped www.jekejeke.ch on
>>> Wayback Machine . Red Taping is a legal
>>> process which took a few steps, like E-mail
>>>
>>> verification and DNS verifcation, I had to provide the
>>> whole history that I owned www.jekejeke.ch, and it
>>> is not temporary , its irreversible, since I do not
>>>
>>> intend to remove the red tape. But the "red tape"
>>> metaphor is spot on. The content is not actually
>>> deleted from their servers. It is made inaccessible
>>>
>>> to the public. So certain institution if there is a
>>> need might still access it. But if I am run over by
>>> a tram tomorrow, not sure whether I have a good
>>>
>>> Software-Escrow for Jekejeke Prolog. Currently
>>> you can assume that my company XLOG Technologies AG
>>> is resposible for carrying out or delegating the
>>>
>>> Software-Escrow of Jekejeke Prolog. And the company
>>> still exists, it exists in active form, unlike some
>>> other Prolog involved companies.
>>>
>>> Bye
>>>

[toc] | [prev] | [next] | [standalone]


#14665 — There is something like SuperPrologs ? [SWI, ECLiPSe, etc..] (Was: comp.lang.prolog Frequently Asked Questions)

FromMild Shock <janburse@fastmail.fm>
Date2025-07-15 13:24 +0200
SubjectThere is something like SuperPrologs ? [SWI, ECLiPSe, etc..] (Was: comp.lang.prolog Frequently Asked Questions)
Message-ID<1055dp6$28nr1$1@solani.org>
In reply to#14300
I have no useful advice in writing portable
Prolog code. There is also the concept of dialects
and dialect modules, implemented by SWI-Prolog,

ECLiPSe Prolog, etc.. You can declare a module
written in some dialect:

:- module(+Module, +PublicList, +Dialect)
https://www.swi-prolog.org/pldoc/doc_for?object=module/3

I think Logtalk cannot do this. Logtalk would require
that you convert your code to Logtalk, where as
the dialect approach requires you do nothing.

Logtalk has the stance that a dialect sits in the
backend and not in the front end. Its not a
SuperProlog, it only has this idea:

prolog_dialect
Identifier of the backend Prolog compiler (an atom).
This flag can be used for conditional compilation of
Prolog compiler specific code.
https://logtalk.org/manuals/userman/programming.html#compiler-flags

Markus Triska schrieb:
>                   Frequently Asked Questions - comp.lang.prolog
> 
>     Last-modified: 2022-02-24
>     Last-changes: Update link to tutorial by J.R. Fisher. Geoffrey Churchill.
> 
> Markus Triska (Mar. 2 2007 - ... )
> 
> Remko Troncon (Jan. 6 2002 - Mar. 2 2007)
> 
> Dirk-Jan Faber (Feb. 1 1999 - Jan. 6 2002)
> 
> Jamie Andrews (Aug 26 1992 - Oct. 16 1997)
>       __________________________________________________________________
> 
>       General Information: This article contains the answers to some
>       Frequently Asked Questions (FAQ) often seen in
>       news://comp.lang.prolog/. It is posted (twice a month, currently on
>       the 2nd 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://www.logic.at/prolog/faq/
> 
>       Please send questions about the FAQ and updates to
>       <triska@logic.at>.
> 
>     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 or send in
>     contributions, check http://www.cs.nmsu.edu/ALP/ or contact
> 
>     Sandro Etalle <etalle@cs.utwente.nl>
> 
>     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 used to be
>     posted periodically to news://comp.lang.prolog.
> 
>     2. Where can I get a free Prolog for system X (PC, Mac, Unix or other)?
> 
>     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 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.)
> 
>     ALF (Algebraic Logic Functional language)
> 
>            + Platforms: UNIX
>            + Available: Unknown
>            + E-mail: Rudolf Opalla
>              <opalla@julien.informatik.uni-dortmund.de>
>            + Info: WAM-based language with narrowing/rewriting
> 
>     Amzi! Prolog + Logic Server
> 
>            + Platforms: Window, Linux and Solaris
>            + Available: http://www.amzi.com/download/
>            + E-mail: <info@amzi.com>
>            + Info: Registration is compulsory, except for the Free
>              Academic/Personal/Evaluation License.
> 
>     Aquarius Prolog 1.0
> 
>            + Platforms: UNIX
>            + Available: http://www.info.ucl.ac.be/people/PVR/aquarius.html
>            + Info: High performance, commercial functionality except
>              debugging and modules.
> 
>     Argo Prolog v.1.1
> 
>            + Platforms: Solaris 1.x and HP-UX 9.x
>            + Available: Unknown
>            + Contact: Takao Doi <doi@csk.co.jp>
> 
>     Arity/Prolog32
> 
>            + Platforms: Win32
>            + Available: https://github.com/Peter-Gabel/ArityProlog32
>            + Info: Arity/Prolog32 provides a complete Prolog programming
>              environment in which you can write, debug, and run Prolog
>              programs in 32-bit Windows environments (95/98/NT/2000).
>              Arity/Prolog32 is a powerful, highly optimized, and extended
>              version of the logic programming language Prolog.
>              Arity/Prolog32 is a complete compiler and interpreter written
>              in Prolog, C, and Assembly language and is a superset of
>              Clocksin and Mellish Prolog.
> 
>     B-Prolog 8.1
> 
>            + Platforms: Win32, Solaris, SunOS, UNIX, FreeBSD and Linux
>            + Available: http://www.probp.com/
>            + E-mail: Neng-Fa Zhou <support@probp.com>
>            + Info: Free of charge for individual users.
> 
>     BinProlog 7.0
> 
>            + Platforms: Windows 95/98/NT, Linux and all major Unix
>              platforms.
>            + Available: https://code.google.com/archive/p/binprolog/
>            + Info: Download free evaluation copies and see online demos.
>              Inexpensive Educational licensing available.Has built-in
>              networking, multi-threading, mobile code and distributed
>              blackboards. Supports BinNet Internet Programming Tool kit.
> 
>     Brain Aid Prolog (BAP) v1.4
> 
>            + Platforms: Transputer systems
>            + Info: BAP is a parallel prolog system for Transputer systems.
>              Available under a Berkely style of copyright.
> 
>     C#Prolog
> 
>            + Platforms: Win32, UNIX
>            + Available: http://sourceforge.net/projects/cs-prolog/
>            + E-mail: John Pool <j.pool@ision.nl>
>            + Info: A Prolog interpreter written in C#. Can easily be
>              integrated in C# programs. Characteristics: reliable and quite
>              fast beta version, command line interface, builtin DCG,
>              XML-predicates, persistent predicates (using Firebird RDBMS),
>              extendible.
> 
>     Ciao 1.4
> 
>            + Platforms: Linux, Win32 (95/98/NT), Solaris, SunOS, UNIX in
>              general.
>            + Available: http://ciao-lang.org
>            + E-mail: Developers <ciao@clip.dia.fi.upm.es>, Users
>              <ciao-users@clip.dia.fi.upm.es>
>            + Info: Next generation LP/CLP system. Commercial functionality,
>              but freely available w/source. ISO-Prolog + modules,
>              networking, multi-threading, clp(r), clp(q), interfaces (Java,
>              C, tcltk, WWW, databases/ODBC, ...), functions, higher-order,
>              records, persistence, objects, assertions (types, modes, ...),
>              source debugger, auto-documenter, static debugger, and more.
> 
>     clp(FD)
> 
>            + Platforms: UNIX
>            + Contact: Daniel Diaz <daniel.diaz@inria.fr>
>            + Info: Constraint logic programming over finite domains.
>              Requires GNU C v.2.4.5 or higher.
> 
>     clp(FD,S)
> 
>            + Platforms: UNIX
>            + Contact: Yan Georget <Yan.Georget@inria.fr>
>            + Info: Requires GNU C (gcc) version 2.4.5. or higher.
> 
>     CLP(R)
> 
>            + Platforms: UNIX
>            + Available: E-mail request from Joxan Jaffar
>              <joxan@watson.ibm.com>.
>            + Info: Constraint logic programming language, for academic and
>              research purposes only.
> 
>     CxProlog
> 
>            + Platforms: UNIX, MacOS X, Windows
>            + Available: http://ctp.di.fct.unl.pt/~amd/cxprolog/
>            + Info: Open source (GPL) implementation supporting Unicode,
>              threads, sockets, processes, contexts, imperative data
>              structures, and interfaces with C/C++, Java, and wxWidgets
>            + Contact: Artur Miguel Dias <amd@fct.unl.pt>
> 
>     ECLiPSe Constraint Logic Programming System, subsuming Prolog.
> 
>            + Platforms: Solaris, Linux, Linux/Alpha, Mac OS X, Windows
>            + Available: http://eclipseclp.org or
>              http://www.sourceforge.net/projects/eclipse-clp
>            + Info: ECLiPSe is a Prolog and Constraint Programming platform
>              with a long history and has been open-source since Sept 2006.
>            + License: MPL
> 
>     IF Prolog V5.3
> 
>            + Platforms: Windows 95/98/NT/2000/XP, Linux, Solaris, AIX,
>              HP-UX and other UNIX platforms
>            + Available: http://www.ifcomputer.de/Products/Prolog/
>            + E-mail: <info@ifcomputer.de>
>            + Info: IF Prolog is a commercial Prolog system with interfaces
>              to C/C++, Java, sockets, Windows events and a COM servers. A
>              graphical debugger allows step-forward, step backward
>              debugging of Prolog code. A static module concept allows many
>              additional errors to be detected at compile time. Constraint
>              Programming (for finite domains, intervals and booleans using
>              global constraints and linear optimisation).
>            + License: Free evaluation copies and inexpensive educational
>              licensing available.
> 
>     GNU Prolog
> 
>            + Platforms: Many Unixes, Windows, MacOS X
>            + Available: http://www.gprolog.org/
>            + E-mail: Daniel Diaz <daniel.diaz@inria.fr>
> 
>     Jinni 2.27
> 
>            + Platforms: Java-based
>            + Available: https://github.com/heathmanb/JinniProlog
>            + Info: Multi-threaded, Java based Prolog interpreter with
>              built-in networking, distributed blackboards and mobile code
>              (inexpensive shareware licensing available).
> 
>     JIProlog
> 
>            + Platforms: Java-based
>            + Available: http://www.jiprolog.com/
>            + Info: Java Internet Prolog is a cross-platform pure Java 100%
>              prolog interpreter that supplies Java world with the power of
>              prolog language and provides prolog language with a technology
>              to implement new predicates in Java.
> 
>     KLIC
> 
>            + Platforms: UNIX
>            + Info: ICOT Free Software. Concurrent logic programming. Tested
>              on Sparcs, DEC 7000, Gateway P5-60.
>            + Contact: <ifs@icot.or.jp>
> 
>     LPA Win-Prolog, demo version
> 
>            + Platforms: Windows
>            + Available: Available from http://www.lpa.co.uk/ind_dow.htm
> 
>     MINERVA
> 
>            + Platforms: Java
>            + Info: Proprietary commercial ISO-Prolog Compiler in 100% Java
>              support for web programming, XML, servlets, applets,
>              standalones. Free evaluation license.
> 
>     Modular SB-Prolog (= SB-Prolog version 3.1 plus modules)
> 
>            + Platforms: SPARC, DECstation, MIPS, HP 9000 series, Sun 3.
>            + Info: Copy-lefted.
> 
>     Open Prolog
> 
>            + Platforms: Apple Macintosh
>            + Available: http://www.cs.tcd.ie/open-prolog/
>            + E-mail: <brady@cs.tcd.ie>. (Michael Brady).
> 
>     Poplog Prolog
> 
>            + Platforms: Various Unixes, including Sun, Dec Alpha, HP and
>              many others. Also a Win32 version is available. Sources
>              available for other combinations.
>            + Available: At the Free Poplog Web/FTP site, including full
>              sources
>              http://www.cs.bham.ac.uk/research/poplog/freepoplog.html
>            + E-mail: queries may be posted to news://comp.lang.pop/, or to
>              <pop-forum@cs.bham.ac.uk> or <A.Sloman@cs.bham.ac.uk> (Last
>              resort!)
>            + Info: Robust incremental compiler, part of the multi-language
>              Poplog system (including Common Lisp, Pop-11 and Standard ML).
>              Unix, Linux & VMS versions include full support for X window
>              facilities/Motif. More information at
>              http://www.cs.bham.ac.uk/research/poplog/poplog.info.html
>              Licence modelled on XFree86. Can be freely distributed, though
>              copyright is owned by Sussex University and ISL.
> 
>     PIE2
> 
>            + Platforms: Unknown
>            + Available: On CompuServe in the AIEXPERT forum, interpreter
>              and examples in PIE2.ZIP, documentation in PIEDOC.ZIP.
>            + E-mail: Brent Ruggles <ruggles@shell.com>
> 
>     QuProlog
> 
>            + Platforms: UNIX, Linux, beta for MAC
>            + Available:
>              http://www.itee.uq.edu.au/~pjr/HomePages/QuPrologHome.html
>            + E-mail: <pjr@itee.uq.edu.au>
>            + Info: Extended WAM with support for quantifiers and
>              substitutions, multi-threaded, high-level communication.
> 
>     Scryer Prolog
> 
>            + Platforms: Unix, Linux, Windows and Mac
>            + Available: https://github.com/mthom/scryer-prolog
>            + Info: A modern Prolog system written mostly in Rust.
> 
>     Strawberry Prolog
> 
>            + Platforms: Windows 95/NT, plans for UNIX and Macintosh
>            + Available: http://www.dobrev.com/
>            + E-mail: <dimiter@dobrev.com>
> 
>     SWI Prolog
> 
>            + Platforms: Binaries for Linux, Windows (NT/2000/XP/Vista) and
>              Mac OS X (darwin). Sources: ANSI-C, both 32 and 64-bit
>              machines, compiles on almost all Unix systems and more.
>            + Available: http://www.swi-prolog.org
>            + Info: Complete, ISO and Edinburgh standard, common
>              optimizations, GC including atoms. Portable graphics, multiple
>              threads, constraints, comprehensive libraries for (semantic)
>              web programming, Unicode, source-level debugger, advanced
>              syntax colouring
>            + License: Simplified BSD. Run license/0 for more information.
> 
>     Tau Prolog
> 
>            + Platforms: Web-based
>            + Available: http://tau-prolog.org/
>            + Info: An open source Prolog interpreter in JavaScript.
> 
>     Trinc-Prolog
> 
>            + Platforms: Windows 95/98/NT 4.0, plans for Windows 2000, Linux
>              and Sun Solaris
>            + E-mail: <info@trinc-prolog.com>
> 
>     Visual Prolog
> 
>            + Platforms: Win32
>            + Available: http://www.visual-prolog.com
>            + Info: Includes all the facilities necessary to write mission
>              critical commercial-grade applications. Fully visual
>              development environment. Open architecture. Object-oriented.
>              Built-in database system and ODBC support. Visual Prolog
>              Personal Edition is available on a freeware license.
> 
>     wamcc
> 
>            + Platforms: UNIX
>            + Info: Compiler which translates Prolog to C via WAM.
>              Debuggers. Requires GNU C v.2.4.5 or higher.
>            + Contact: Daniel Diaz <daniel.diaz@inria.fr>
> 
>     XGP
> 
>            + Platforms: Apple Macintosh OS X, 10.2.3+
>            + Available: http://xgp.sourceforge.net/
>            + Info: XGP is an open source (GPL) integrated development
>              environment with user interface and graphics support based on
>              gprolog and Cocoa under Macintosh OS X.
> 
>     XSB
> 
>            + Platforms: Many, including SunOS, Linux and Windows
>            + Available: http://xsb.sourceforge.net/
>            + E-mail: <xsb-users@lists.sourceforge.net>
>            + Info: system with SLG-resolution, HiLog syntax, and
>              unification factoring.
> 
>     Yap
> 
>            + Platforms: UNIX-based platforms and Windows
>            + Available: https://github.com/vscosta/yap-6.3
>            + E-mail: Vitor Santos Costa <vsc@ncc.up.pt>
>            + Info: Yap is entirely written in C and Prolog and should be
>              portable to most 32-bit and 64-bit Unix based platforms. A
>              Windows port is also available. Yap4.2 is distributed under
>              Perl's artistic license and can be freely distributed.
> 
>     3. What commercial systems are available? What about systems available
>     for a price from research institutions?
> 
>     Many commercial systems are listed in the Prolog Resource Guide. The
>     Resource Guide also lists many systems which are not exactly
>     "commercial", but available for a price from research institutions. 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 Prolog Resource Guide hasn't been updated lately, but nevertheless
>     still contains some valuable information. It can be found at
>     http://www-2.cs.cmu.edu/Groups/AI/html/faqs/lang/prolog/prg/top.html.
> 
>     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.
> 
>     ALS (Applied Logic Systems)
> 
>            + Web site: http://alsprolog.com
> 
>     Amzi! inc.
> 
>            + Web site: http://www.amzi.com
>            + Information: <info@amzi.com>
>            + Sales: <sales@amzi.com>
>            + Support: <support@amzi.com>
> 
>     Arity/Prolog32
> 
>            + Web site: https://github.com/Peter-Gabel/ArityProlog32
> 
>     Ciao, PiLLoW, WebDB, etc.
> 
>            + Web site: http://www.clip.dia.fi.upm.es/Software
>            + Users' group: <ciao-users@clip.dia.fi.upm.es>
>            + Information: <ciao@clip.dia.fi.upm.es>
>            + Tech support: <ciao-bugs@clip.dia.fi.upm.es>
> 
>     COSYTEC (CHIP V5)
> 
>            + Web site: http://www.cosytec.com
>            + Information: <info@cosytec.com> (or .fr)
>            + Tech Support: <support@cosytec.com> (or .fr)
> 
>     ECLiPSe
> 
>            + Web site: http://eclipseclp.org
>            + Users' group: <eclipse-clp-users@lists.sf.net>
>            + Tech support: <http://eclipseclp.org/bugs.html>
>            + Support contracts: <info@coninfer.com>
> 
>     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>
> 
>     GNU Prolog
> 
>            + Web site: http://www.gprolog.org/
>            + Users' group: <users-prolog-request@gnu.org>
>            + Bug reports: <bug-prolog@gnu.org>
> 
>     LPA
> 
>            + Web site: http://www.lpa.co.uk/
>            + Sales: <sales@lpa.co.uk>
>            + Tech support: <support@lpa.co.uk>
> 
>     MasterProLog
> 
>            + Formerly BIM ProLog
> 
>     PDC Prolog
> 
>            + PDC Prolog is the succesor to Turbo Prolog and the predecessor
>              to Visual Prolog.
> 
>     ProLog by BIM
> 
>            + Currently MasterProLog
> 
>     Quintus
> 
>            + Web site: http://quintus.sics.se
>            + Mailing list: see
>              http://www.sics.se/isl/quintuswww/site/community.html
>            + Sales: <qpsales@sics.se>
>            + Tech support: <qpsupport@sics.se>
> 
>     SICStus
> 
>            + Web page: http://www.sics.se/sicstus
>            + Mailing list: see
>              http://www.sics.se/isl/sicstuswww/site/community.html
>            + Sales: <sicstus-request@sics.se>
>            + Tech support: <sicstus-support@sics.se>
> 
>     Trinc / Trinc-Prolog
> 
>            + Information: <info@trinc-prolog.com>
>            + Sales: <sales@trinc-prolog.com>
>            + Support: <support@trinc-prolog.com>
> 
>     Turbo Prolog
> 
>            + Turbo Prolog is the predecessor of PDC Prolog (see above).
> 
>     Visual Prolog
> 
>            + Web site: http://www.visual-prolog.com/
>            + Information: <sales@pdc.dk> (or <sales@visual-prolog.com>)
>            + Sales: <sales@pdc.dk> (or <sales@visual-prolog.com>)
>            + Tech support: <support@pdc.dk> (or
>              <support@visual-prolog.com>)
> 
>     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, note that there are many different "Prologs" and other logic
>     programming languages available, all with different capabilities.
> 
>     6. What are the recent developments?
> 
>     There are some languages in development which do not have Prolog
>     syntax, but do subsume and generalize Prolog's logic programming
>     abilities.
> 
>     Mercury
> 
>            + Web site: http://www.mercury.cs.mu.oz.au/index.html
> 
>     The Mozart Consortium:
> 
>            + Web site: http://mozart.github.io/
>            + Mailing lists: <http://mozart.github.io/mailing-lists/>
> 
>     Some other languages bring new developments while also supporting
>     Prolog syntax and functionality as an option:
> 
>     Ciao
> 
>            + Web site: http://www.clip.dia.fi.upm.es/Software
>            + Users' group: <ciao-users@clip.dia.fi.upm.es>
>            + Information: <ciao@clip.dia.fi.upm.es>
>            + Tech support: <ciao-bugs@clip.dia.fi.upm.es>
> 
>     Logtalk
> 
>            + Web site: http://logtalk.org/
>            + E-mail: Paulo Moura <pmoura@logtalk.org>
>            + Info: Open source object-oriented extension to Prolog
>              compatible with most Prolog compilers.
> 
>     7. 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 news://comp.lang.prolog/ readers who would
>     be glad to help people making a legitimate attempt to learn Prolog.
> 
>     8. Can you suggest some books on Prolog?
> 
>     The Prolog Resource Guide (see above) contains a listing of Prolog
>     books. It is maintained by Mark Kantrowitz
>     (<Mark.Kantrowitz@glinda.oz.cs.cmu.edu>), and posted periodically on
>     news://comp.lang.prolog.
> 
>     Here are some of the most popular books on Prolog.
> 
>     Introductory
> 
>            + "Programming In Prolog". William F. Clocksin and Christopher
>              S. Mellish. Springer-Verlag, 2003 (5th ed).
>            + "Prolog for Programmers". Feliks Kluzniak and Stanislaw
>              Szpakowicz. Academic Press, London, 1985, now available
>              without charge from
>              https://sites.google.com/site/prologforprogrammers/
>            + "Prolog Programming for Artificial Intelligence". Ivan Bratko.
>              Addison-Wesley, 2001 (3rd ed).
> 
>     Advanced
> 
>            + "The Art of Prolog: Advanced Programming Techniques". Leon
>              Sterling and Ehud Shapiro. MIT Press, 1994 (2nd ed).
>            + "The Craft of Prolog". Richard A. O'Keefe. MIT Press, 1990.
> 
>     Logic programming theory
> 
>            + "Foundations of Logic Programming". John Lloyd.
>              Springer-Verlag, 1988 (2nd ed).
>            + "Logic, Programming and Prolog". Ulf Nilsson and Jan
>              Maluszynski. Originally published by John Wiley & Sons Ltd
>              (2nd ed. 1995) and now available without charge from
>              http://www.ida.liu.se/~ulfni/lpp
> 
>     Expert Systems
> 
>            + "Building Expert Systems in Prolog". Dennis Merritt.
>              Springer-Verlag, 1989. HTML & PDF versions available from
>              http://www.amzi.com/ExpertSystemsInProlog
> 
>     9. Are there any WWW archives of comp.lang.prolog ?
> 
>     Yes, there are: Google Groups has archives of news://comp.lang.prolog/.
>     They can be found at
>     https://groups.google.com/forum/#!forum/comp.lang.prolog
> 
>     10. How can I get the ISO Prolog standard? Where can I go for more
>     information about it?
> 
>     You can obtain the approved international standards from your national
>     member body or directly from ISO (http://www.iso.org).
> 
>     The working group on Prolog standardisation is ISO/IEC JTC1/SC22/WG17
>     (http://www.sju.edu/~jhodgson/wg17/).
> 
>     Contacts:
> 
>            + Convenor of WG17: Ulrich Neumerkel
>              (<ulrich@mips.complang.tuwien.ac.at>)
> 
>     Further literature: "Prolog: The Standard (Reference manual)", P.
>     Deransart, A. Ed-Dbali, L. Cervoni, Springer Verlag (1996). Extra
>     information can be found on
>     http://pauillac.inria.fr/~deransar/prolog/docs.html
> 
>     http://www-2.cs.cmu.edu/afs/cs.cmu.edu/project/ai-repository/ai/lang/pr
>     olog/doc/standard/ contains the December 1991 draft, the March 1993
>     draft, Michael Covington's summary of it, and Richard O'Keefe's 1984
>     Prolog standard draft.
> 
>     http://www.complang.tuwien.ac.at/ulrich/iso-prolog/ ISO Prolog works
>     and related material by the convenor of WG17.
> 
>     For questions about the standard, use this newsgroup or Stackoverflow.
> 
>     11. 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). The
>     book is out of print, and available online at
>     http://wambook.sourceforge.net.
> 
>     12. Is there a WWW page on logic programming?
> 
>     Yes, there is one by Jonathan Bowen; the URL is
>     http://www.afm.sbu.ac.uk/logic-prog/. He invites us to mail him at
>     <jonathan.bowen@sbu.ac.uk> with any relevant information for inclusion.
> 
>     A collection of artifacts from logic programming languages beginning
>     with Marseille Prolog is available from
>     http://www.softwarepreservation.org/projects/prolog/index.html
> 
>     A large amount of Prolog code is available from the CMU AI Repository:
>     http://www.cs.cmu.edu/afs/cs/project/ai-repository/ai/lang/prolog/0.htm
>     l
> 
>     Recently, Stackoverflow has become a valuable resource for Prolog
>     questions and answers: http://stackoverflow.com/questions/tagged/prolog
> 
>     Another community resource is the #prolog IRC channel on
>     irc.libera.chat.
> 
>     13. Can I do Internet/WWW programming with Prolog?
> 
>     Prolog is very suitable for this task. Several commercial and free
>     implementations include special support for it. A page specifically on
>     this topic (including some tutorials) is maintained at
>     http://www.clip.dia.fi.upm.es/lpnet/lpnet.html. A public-domain library
>     exists (PiLLoW) for several popular Prolog systems which helps in the
>     task. See: http://www.clip.dia.fi.upm.es/Software/pillow/
> 
>     14. Is there a WWW page with some tutorials on Prolog?
> 
>     Beginner level:
> 
>            + Adventure in Prolog:
>              http://www.amzi.com/AdventureInProlog/advfrtop.htm
>            + On-line guide to Prolog Programming:
>              http://kti.ms.mff.cuni.cz/~bartak/prolog/index.html
>            + Prolog Programming, A First Course:
>              http://computing.unn.ac.uk/staff/cgpb4/prologbook/book.html
>            + Learn Prolog Now!: http://www.learnprolognow.org
> 
>     Intermediate to advanced level:
> 
>            + https://skolemmachines.org/ThePrologTutorial/
> 
>     15. How do I edit Prolog code?
> 
>     Emacs and VIM ship with basic support for Prolog. A much improved Emacs
>     mode is maintained by Stefan Bruda and available from
>     https://bruda.ca/emacs/prolog_mode_for_emacs
> 
>     Logtalk ships with various editing services for many common editors,
>     also usable for Prolog.
> 
>     SWI Prolog has a built-in Emacs clone called PceEmacs. There are also
>     Emacs definitions that let you evaluate embedded queries:
>     https://www.metalevel.at/ediprolog/. An SWI Prolog programming
>     environment suitable for schools is available from
>     http://lernen.bildung.hessen.de/informatik/swiprolog/indexe.htm
> 
>     A Prolog plug-in for the "Eclipse"-IDE is available from:
>     http://eclipse.ime.usp.br/projetos/grad/plugin-prolog/index.html
> 
>     A sophisticated integrated editing and teaching environment with
>     declarative debugging, termination analysis and many visualisations is
>     available from http://www.complang.tuwien.ac.at/ulrich/gupu/
> 
>     16. How do I publish Prolog code?
> 
>     Logtalk ships with support for various syntax highlighters, also usable
>     for Prolog. These include support for Pygments (used e.g. on Trac and
>     GitHub), Rouge (use e.g. in GitLab), GeSHi (used e.g. on Wikis), minted
>     and texments LaTeX packages (e.g. source code listings), Google Code
>     Prettify, Source-highlight, Highlight, SyntaxHighlighter, and SHJS
>     (JavaScript highlighter for e.g. web pages).
> 
> 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.
> 
>     Special thanks to Jamie Andrews, Dirk-Jan Faber and Remko Troncon, who
>     have been maintaining and posting the FAQ in the past.
> 

[toc] | [prev] | [next] | [standalone]


#14666 — Is ISO itself not simply a dialect? (Was: There is something like SuperPrologs ? [SWI, ECLiPSe, etc..])

FromMild Shock <janburse@fastmail.fm>
Date2025-07-15 13:26 +0200
SubjectIs ISO itself not simply a dialect? (Was: There is something like SuperPrologs ? [SWI, ECLiPSe, etc..])
Message-ID<1055dsp$28nr1$2@solani.org>
In reply to#14665
Dialect modules requires that you have a
SuperProlog, that can manage different dialects.
Currenty SuperPrologs are mostly ModulePrologs
that just swap in additional predicate definitions,

also allow overwriting their own predicate
definitions locally, in favor of some dialect
predicate definition. And so own etc etc, I don't
know how successful this approach, it might

then also require that set_prolog_flag/2 can work
module locally, that you can do set_prolog_flag(
double_quotes, chars) to have a Scryer, Trealla,
etc. dialect, and set_prolog_flag(double_codes,

string) to have some SWI dialect, or
set_prolog_flag(double_codes, codes) to have
some ISO defaults dialect. For example an ISO dialect
might have this definition in their commons module:

false :- fail.

Since the Corrigendum 2 came rather later, so
some Prolog might have missed it, or balantly ignore
it. The Corrigendum 2 came 2012, but the ISO
standard was from 1995. Thats a gap

of almost 20 years. Quite amazing nonsense.

Mild Shock schrieb:
> I have no useful advice in writing portable
> Prolog code. There is also the concept of dialects
> and dialect modules, implemented by SWI-Prolog,
> 
> ECLiPSe Prolog, etc.. You can declare a module
> written in some dialect:
> 
> :- module(+Module, +PublicList, +Dialect)
> https://www.swi-prolog.org/pldoc/doc_for?object=module/3
> 
> I think Logtalk cannot do this. Logtalk would require
> that you convert your code to Logtalk, where as
> the dialect approach requires you do nothing.
> 
> Logtalk has the stance that a dialect sits in the
> backend and not in the front end. Its not a
> SuperProlog, it only has this idea:
> 
> prolog_dialect
> Identifier of the backend Prolog compiler (an atom).
> This flag can be used for conditional compilation of
> Prolog compiler specific code.
> https://logtalk.org/manuals/userman/programming.html#compiler-flags
> 
> Markus Triska schrieb:
>>                   Frequently Asked Questions - comp.lang.prolog
>>
>>     Last-modified: 2022-02-24
>>     Last-changes: Update link to tutorial by J.R. Fisher. Geoffrey 
>> Churchill.
>>
>> Markus Triska (Mar. 2 2007 - ... )
>>
>> Remko Troncon (Jan. 6 2002 - Mar. 2 2007)
>>
>> Dirk-Jan Faber (Feb. 1 1999 - Jan. 6 2002)
>>
>> Jamie Andrews (Aug 26 1992 - Oct. 16 1997)
>>       __________________________________________________________________
>>
>>       General Information: This article contains the answers to some
>>       Frequently Asked Questions (FAQ) often seen in
>>       news://comp.lang.prolog/. It is posted (twice a month, currently on
>>       the 2nd 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://www.logic.at/prolog/faq/
>>
>>       Please send questions about the FAQ and updates to
>>       <triska@logic.at>.
>>
>>     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 or send in
>>     contributions, check http://www.cs.nmsu.edu/ALP/ or contact
>>
>>     Sandro Etalle <etalle@cs.utwente.nl>
>>
>>     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 used to be
>>     posted periodically to news://comp.lang.prolog.
>>
>>     2. Where can I get a free Prolog for system X (PC, Mac, Unix or 
>> other)?
>>
>>     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 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.)
>>
>>     ALF (Algebraic Logic Functional language)
>>
>>            + Platforms: UNIX
>>            + Available: Unknown
>>            + E-mail: Rudolf Opalla
>>              <opalla@julien.informatik.uni-dortmund.de>
>>            + Info: WAM-based language with narrowing/rewriting
>>
>>     Amzi! Prolog + Logic Server
>>
>>            + Platforms: Window, Linux and Solaris
>>            + Available: http://www.amzi.com/download/
>>            + E-mail: <info@amzi.com>
>>            + Info: Registration is compulsory, except for the Free
>>              Academic/Personal/Evaluation License.
>>
>>     Aquarius Prolog 1.0
>>
>>            + Platforms: UNIX
>>            + Available: 
>> http://www.info.ucl.ac.be/people/PVR/aquarius.html
>>            + Info: High performance, commercial functionality except
>>              debugging and modules.
>>
>>     Argo Prolog v.1.1
>>
>>            + Platforms: Solaris 1.x and HP-UX 9.x
>>            + Available: Unknown
>>            + Contact: Takao Doi <doi@csk.co.jp>
>>
>>     Arity/Prolog32
>>
>>            + Platforms: Win32
>>            + Available: https://github.com/Peter-Gabel/ArityProlog32
>>            + Info: Arity/Prolog32 provides a complete Prolog programming
>>              environment in which you can write, debug, and run Prolog
>>              programs in 32-bit Windows environments (95/98/NT/2000).
>>              Arity/Prolog32 is a powerful, highly optimized, and extended
>>              version of the logic programming language Prolog.
>>              Arity/Prolog32 is a complete compiler and interpreter 
>> written
>>              in Prolog, C, and Assembly language and is a superset of
>>              Clocksin and Mellish Prolog.
>>
>>     B-Prolog 8.1
>>
>>            + Platforms: Win32, Solaris, SunOS, UNIX, FreeBSD and Linux
>>            + Available: http://www.probp.com/
>>            + E-mail: Neng-Fa Zhou <support@probp.com>
>>            + Info: Free of charge for individual users.
>>
>>     BinProlog 7.0
>>
>>            + Platforms: Windows 95/98/NT, Linux and all major Unix
>>              platforms.
>>            + Available: https://code.google.com/archive/p/binprolog/
>>            + Info: Download free evaluation copies and see online demos.
>>              Inexpensive Educational licensing available.Has built-in
>>              networking, multi-threading, mobile code and distributed
>>              blackboards. Supports BinNet Internet Programming Tool kit.
>>
>>     Brain Aid Prolog (BAP) v1.4
>>
>>            + Platforms: Transputer systems
>>            + Info: BAP is a parallel prolog system for Transputer 
>> systems.
>>              Available under a Berkely style of copyright.
>>
>>     C#Prolog
>>
>>            + Platforms: Win32, UNIX
>>            + Available: http://sourceforge.net/projects/cs-prolog/
>>            + E-mail: John Pool <j.pool@ision.nl>
>>            + Info: A Prolog interpreter written in C#. Can easily be
>>              integrated in C# programs. Characteristics: reliable and 
>> quite
>>              fast beta version, command line interface, builtin DCG,
>>              XML-predicates, persistent predicates (using Firebird 
>> RDBMS),
>>              extendible.
>>
>>     Ciao 1.4
>>
>>            + Platforms: Linux, Win32 (95/98/NT), Solaris, SunOS, UNIX in
>>              general.
>>            + Available: http://ciao-lang.org
>>            + E-mail: Developers <ciao@clip.dia.fi.upm.es>, Users
>>              <ciao-users@clip.dia.fi.upm.es>
>>            + Info: Next generation LP/CLP system. Commercial 
>> functionality,
>>              but freely available w/source. ISO-Prolog + modules,
>>              networking, multi-threading, clp(r), clp(q), interfaces 
>> (Java,
>>              C, tcltk, WWW, databases/ODBC, ...), functions, 
>> higher-order,
>>              records, persistence, objects, assertions (types, modes, 
>> ...),
>>              source debugger, auto-documenter, static debugger, and more.
>>
>>     clp(FD)
>>
>>            + Platforms: UNIX
>>            + Contact: Daniel Diaz <daniel.diaz@inria.fr>
>>            + Info: Constraint logic programming over finite domains.
>>              Requires GNU C v.2.4.5 or higher.
>>
>>     clp(FD,S)
>>
>>            + Platforms: UNIX
>>            + Contact: Yan Georget <Yan.Georget@inria.fr>
>>            + Info: Requires GNU C (gcc) version 2.4.5. or higher.
>>
>>     CLP(R)
>>
>>            + Platforms: UNIX
>>            + Available: E-mail request from Joxan Jaffar
>>              <joxan@watson.ibm.com>.
>>            + Info: Constraint logic programming language, for academic 
>> and
>>              research purposes only.
>>
>>     CxProlog
>>
>>            + Platforms: UNIX, MacOS X, Windows
>>            + Available: http://ctp.di.fct.unl.pt/~amd/cxprolog/
>>            + Info: Open source (GPL) implementation supporting Unicode,
>>              threads, sockets, processes, contexts, imperative data
>>              structures, and interfaces with C/C++, Java, and wxWidgets
>>            + Contact: Artur Miguel Dias <amd@fct.unl.pt>
>>
>>     ECLiPSe Constraint Logic Programming System, subsuming Prolog.
>>
>>            + Platforms: Solaris, Linux, Linux/Alpha, Mac OS X, Windows
>>            + Available: http://eclipseclp.org or
>>              http://www.sourceforge.net/projects/eclipse-clp
>>            + Info: ECLiPSe is a Prolog and Constraint Programming 
>> platform
>>              with a long history and has been open-source since Sept 
>> 2006.
>>            + License: MPL
>>
>>     IF Prolog V5.3
>>
>>            + Platforms: Windows 95/98/NT/2000/XP, Linux, Solaris, AIX,
>>              HP-UX and other UNIX platforms
>>            + Available: http://www.ifcomputer.de/Products/Prolog/
>>            + E-mail: <info@ifcomputer.de>
>>            + Info: IF Prolog is a commercial Prolog system with 
>> interfaces
>>              to C/C++, Java, sockets, Windows events and a COM servers. A
>>              graphical debugger allows step-forward, step backward
>>              debugging of Prolog code. A static module concept allows 
>> many
>>              additional errors to be detected at compile time. Constraint
>>              Programming (for finite domains, intervals and booleans 
>> using
>>              global constraints and linear optimisation).
>>            + License: Free evaluation copies and inexpensive educational
>>              licensing available.
>>
>>     GNU Prolog
>>
>>            + Platforms: Many Unixes, Windows, MacOS X
>>            + Available: http://www.gprolog.org/
>>            + E-mail: Daniel Diaz <daniel.diaz@inria.fr>
>>
>>     Jinni 2.27
>>
>>            + Platforms: Java-based
>>            + Available: https://github.com/heathmanb/JinniProlog
>>            + Info: Multi-threaded, Java based Prolog interpreter with
>>              built-in networking, distributed blackboards and mobile code
>>              (inexpensive shareware licensing available).
>>
>>     JIProlog
>>
>>            + Platforms: Java-based
>>            + Available: http://www.jiprolog.com/
>>            + Info: Java Internet Prolog is a cross-platform pure Java 
>> 100%
>>              prolog interpreter that supplies Java world with the 
>> power of
>>              prolog language and provides prolog language with a 
>> technology
>>              to implement new predicates in Java.
>>
>>     KLIC
>>
>>            + Platforms: UNIX
>>            + Info: ICOT Free Software. Concurrent logic programming. 
>> Tested
>>              on Sparcs, DEC 7000, Gateway P5-60.
>>            + Contact: <ifs@icot.or.jp>
>>
>>     LPA Win-Prolog, demo version
>>
>>            + Platforms: Windows
>>            + Available: Available from http://www.lpa.co.uk/ind_dow.htm
>>
>>     MINERVA
>>
>>            + Platforms: Java
>>            + Info: Proprietary commercial ISO-Prolog Compiler in 100% 
>> Java
>>              support for web programming, XML, servlets, applets,
>>              standalones. Free evaluation license.
>>
>>     Modular SB-Prolog (= SB-Prolog version 3.1 plus modules)
>>
>>            + Platforms: SPARC, DECstation, MIPS, HP 9000 series, Sun 3.
>>            + Info: Copy-lefted.
>>
>>     Open Prolog
>>
>>            + Platforms: Apple Macintosh
>>            + Available: http://www.cs.tcd.ie/open-prolog/
>>            + E-mail: <brady@cs.tcd.ie>. (Michael Brady).
>>
>>     Poplog Prolog
>>
>>            + Platforms: Various Unixes, including Sun, Dec Alpha, HP and
>>              many others. Also a Win32 version is available. Sources
>>              available for other combinations.
>>            + Available: At the Free Poplog Web/FTP site, including full
>>              sources
>>              http://www.cs.bham.ac.uk/research/poplog/freepoplog.html
>>            + E-mail: queries may be posted to news://comp.lang.pop/, 
>> or to
>>              <pop-forum@cs.bham.ac.uk> or <A.Sloman@cs.bham.ac.uk> (Last
>>              resort!)
>>            + Info: Robust incremental compiler, part of the 
>> multi-language
>>              Poplog system (including Common Lisp, Pop-11 and Standard 
>> ML).
>>              Unix, Linux & VMS versions include full support for X window
>>              facilities/Motif. More information at
>>              http://www.cs.bham.ac.uk/research/poplog/poplog.info.html
>>              Licence modelled on XFree86. Can be freely distributed, 
>> though
>>              copyright is owned by Sussex University and ISL.
>>
>>     PIE2
>>
>>            + Platforms: Unknown
>>            + Available: On CompuServe in the AIEXPERT forum, interpreter
>>              and examples in PIE2.ZIP, documentation in PIEDOC.ZIP.
>>            + E-mail: Brent Ruggles <ruggles@shell.com>
>>
>>     QuProlog
>>
>>            + Platforms: UNIX, Linux, beta for MAC
>>            + Available:
>>              http://www.itee.uq.edu.au/~pjr/HomePages/QuPrologHome.html
>>            + E-mail: <pjr@itee.uq.edu.au>
>>            + Info: Extended WAM with support for quantifiers and
>>              substitutions, multi-threaded, high-level communication.
>>
>>     Scryer Prolog
>>
>>            + Platforms: Unix, Linux, Windows and Mac
>>            + Available: https://github.com/mthom/scryer-prolog
>>            + Info: A modern Prolog system written mostly in Rust.
>>
>>     Strawberry Prolog
>>
>>            + Platforms: Windows 95/NT, plans for UNIX and Macintosh
>>            + Available: http://www.dobrev.com/
>>            + E-mail: <dimiter@dobrev.com>
>>
>>     SWI Prolog
>>
>>            + Platforms: Binaries for Linux, Windows (NT/2000/XP/Vista) 
>> and
>>              Mac OS X (darwin). Sources: ANSI-C, both 32 and 64-bit
>>              machines, compiles on almost all Unix systems and more.
>>            + Available: http://www.swi-prolog.org
>>            + Info: Complete, ISO and Edinburgh standard, common
>>              optimizations, GC including atoms. Portable graphics, 
>> multiple
>>              threads, constraints, comprehensive libraries for (semantic)
>>              web programming, Unicode, source-level debugger, advanced
>>              syntax colouring
>>            + License: Simplified BSD. Run license/0 for more information.
>>
>>     Tau Prolog
>>
>>            + Platforms: Web-based
>>            + Available: http://tau-prolog.org/
>>            + Info: An open source Prolog interpreter in JavaScript.
>>
>>     Trinc-Prolog
>>
>>            + Platforms: Windows 95/98/NT 4.0, plans for Windows 2000, 
>> Linux
>>              and Sun Solaris
>>            + E-mail: <info@trinc-prolog.com>
>>
>>     Visual Prolog
>>
>>            + Platforms: Win32
>>            + Available: http://www.visual-prolog.com
>>            + Info: Includes all the facilities necessary to write mission
>>              critical commercial-grade applications. Fully visual
>>              development environment. Open architecture. Object-oriented.
>>              Built-in database system and ODBC support. Visual Prolog
>>              Personal Edition is available on a freeware license.
>>
>>     wamcc
>>
>>            + Platforms: UNIX
>>            + Info: Compiler which translates Prolog to C via WAM.
>>              Debuggers. Requires GNU C v.2.4.5 or higher.
>>            + Contact: Daniel Diaz <daniel.diaz@inria.fr>
>>
>>     XGP
>>
>>            + Platforms: Apple Macintosh OS X, 10.2.3+
>>            + Available: http://xgp.sourceforge.net/
>>            + Info: XGP is an open source (GPL) integrated development
>>              environment with user interface and graphics support 
>> based on
>>              gprolog and Cocoa under Macintosh OS X.
>>
>>     XSB
>>
>>            + Platforms: Many, including SunOS, Linux and Windows
>>            + Available: http://xsb.sourceforge.net/
>>            + E-mail: <xsb-users@lists.sourceforge.net>
>>            + Info: system with SLG-resolution, HiLog syntax, and
>>              unification factoring.
>>
>>     Yap
>>
>>            + Platforms: UNIX-based platforms and Windows
>>            + Available: https://github.com/vscosta/yap-6.3
>>            + E-mail: Vitor Santos Costa <vsc@ncc.up.pt>
>>            + Info: Yap is entirely written in C and Prolog and should be
>>              portable to most 32-bit and 64-bit Unix based platforms. A
>>              Windows port is also available. Yap4.2 is distributed under
>>              Perl's artistic license and can be freely distributed.
>>
>>     3. What commercial systems are available? What about systems 
>> available
>>     for a price from research institutions?
>>
>>     Many commercial systems are listed in the Prolog Resource Guide. The
>>     Resource Guide also lists many systems which are not exactly
>>     "commercial", but available for a price from research 
>> institutions. 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 Prolog Resource Guide hasn't been updated lately, but 
>> nevertheless
>>     still contains some valuable information. It can be found at
>>     http://www-2.cs.cmu.edu/Groups/AI/html/faqs/lang/prolog/prg/top.html.
>>
>>     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.
>>
>>     ALS (Applied Logic Systems)
>>
>>            + Web site: http://alsprolog.com
>>
>>     Amzi! inc.
>>
>>            + Web site: http://www.amzi.com
>>            + Information: <info@amzi.com>
>>            + Sales: <sales@amzi.com>
>>            + Support: <support@amzi.com>
>>
>>     Arity/Prolog32
>>
>>            + Web site: https://github.com/Peter-Gabel/ArityProlog32
>>
>>     Ciao, PiLLoW, WebDB, etc.
>>
>>            + Web site: http://www.clip.dia.fi.upm.es/Software
>>            + Users' group: <ciao-users@clip.dia.fi.upm.es>
>>            + Information: <ciao@clip.dia.fi.upm.es>
>>            + Tech support: <ciao-bugs@clip.dia.fi.upm.es>
>>
>>     COSYTEC (CHIP V5)
>>
>>            + Web site: http://www.cosytec.com
>>            + Information: <info@cosytec.com> (or .fr)
>>            + Tech Support: <support@cosytec.com> (or .fr)
>>
>>     ECLiPSe
>>
>>            + Web site: http://eclipseclp.org
>>            + Users' group: <eclipse-clp-users@lists.sf.net>
>>            + Tech support: <http://eclipseclp.org/bugs.html>
>>            + Support contracts: <info@coninfer.com>
>>
>>     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>
>>
>>     GNU Prolog
>>
>>            + Web site: http://www.gprolog.org/
>>            + Users' group: <users-prolog-request@gnu.org>
>>            + Bug reports: <bug-prolog@gnu.org>
>>
>>     LPA
>>
>>            + Web site: http://www.lpa.co.uk/
>>            + Sales: <sales@lpa.co.uk>
>>            + Tech support: <support@lpa.co.uk>
>>
>>     MasterProLog
>>
>>            + Formerly BIM ProLog
>>
>>     PDC Prolog
>>
>>            + PDC Prolog is the succesor to Turbo Prolog and the 
>> predecessor
>>              to Visual Prolog.
>>
>>     ProLog by BIM
>>
>>            + Currently MasterProLog
>>
>>     Quintus
>>
>>            + Web site: http://quintus.sics.se
>>            + Mailing list: see
>>              http://www.sics.se/isl/quintuswww/site/community.html
>>            + Sales: <qpsales@sics.se>
>>            + Tech support: <qpsupport@sics.se>
>>
>>     SICStus
>>
>>            + Web page: http://www.sics.se/sicstus
>>            + Mailing list: see
>>              http://www.sics.se/isl/sicstuswww/site/community.html
>>            + Sales: <sicstus-request@sics.se>
>>            + Tech support: <sicstus-support@sics.se>
>>
>>     Trinc / Trinc-Prolog
>>
>>            + Information: <info@trinc-prolog.com>
>>            + Sales: <sales@trinc-prolog.com>
>>            + Support: <support@trinc-prolog.com>
>>
>>     Turbo Prolog
>>
>>            + Turbo Prolog is the predecessor of PDC Prolog (see above).
>>
>>     Visual Prolog
>>
>>            + Web site: http://www.visual-prolog.com/
>>            + Information: <sales@pdc.dk> (or <sales@visual-prolog.com>)
>>            + Sales: <sales@pdc.dk> (or <sales@visual-prolog.com>)
>>            + Tech support: <support@pdc.dk> (or
>>              <support@visual-prolog.com>)
>>
>>     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, note that there are many different "Prologs" and other logic
>>     programming languages available, all with different capabilities.
>>
>>     6. What are the recent developments?
>>
>>     There are some languages in development which do not have Prolog
>>     syntax, but do subsume and generalize Prolog's logic programming
>>     abilities.
>>
>>     Mercury
>>
>>            + Web site: http://www.mercury.cs.mu.oz.au/index.html
>>
>>     The Mozart Consortium:
>>
>>            + Web site: http://mozart.github.io/
>>            + Mailing lists: <http://mozart.github.io/mailing-lists/>
>>
>>     Some other languages bring new developments while also supporting
>>     Prolog syntax and functionality as an option:
>>
>>     Ciao
>>
>>            + Web site: http://www.clip.dia.fi.upm.es/Software
>>            + Users' group: <ciao-users@clip.dia.fi.upm.es>
>>            + Information: <ciao@clip.dia.fi.upm.es>
>>            + Tech support: <ciao-bugs@clip.dia.fi.upm.es>
>>
>>     Logtalk
>>
>>            + Web site: http://logtalk.org/
>>            + E-mail: Paulo Moura <pmoura@logtalk.org>
>>            + Info: Open source object-oriented extension to Prolog
>>              compatible with most Prolog compilers.
>>
>>     7. 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 news://comp.lang.prolog/ readers who would
>>     be glad to help people making a legitimate attempt to learn Prolog.
>>
>>     8. Can you suggest some books on Prolog?
>>
>>     The Prolog Resource Guide (see above) contains a listing of Prolog
>>     books. It is maintained by Mark Kantrowitz
>>     (<Mark.Kantrowitz@glinda.oz.cs.cmu.edu>), and posted periodically on
>>     news://comp.lang.prolog.
>>
>>     Here are some of the most popular books on Prolog.
>>
>>     Introductory
>>
>>            + "Programming In Prolog". William F. Clocksin and Christopher
>>              S. Mellish. Springer-Verlag, 2003 (5th ed).
>>            + "Prolog for Programmers". Feliks Kluzniak and Stanislaw
>>              Szpakowicz. Academic Press, London, 1985, now available
>>              without charge from
>>              https://sites.google.com/site/prologforprogrammers/
>>            + "Prolog Programming for Artificial Intelligence". Ivan 
>> Bratko.
>>              Addison-Wesley, 2001 (3rd ed).
>>
>>     Advanced
>>
>>            + "The Art of Prolog: Advanced Programming Techniques". Leon
>>              Sterling and Ehud Shapiro. MIT Press, 1994 (2nd ed).
>>            + "The Craft of Prolog". Richard A. O'Keefe. MIT Press, 1990.
>>
>>     Logic programming theory
>>
>>            + "Foundations of Logic Programming". John Lloyd.
>>              Springer-Verlag, 1988 (2nd ed).
>>            + "Logic, Programming and Prolog". Ulf Nilsson and Jan
>>              Maluszynski. Originally published by John Wiley & Sons Ltd
>>              (2nd ed. 1995) and now available without charge from
>>              http://www.ida.liu.se/~ulfni/lpp
>>
>>     Expert Systems
>>
>>            + "Building Expert Systems in Prolog". Dennis Merritt.
>>              Springer-Verlag, 1989. HTML & PDF versions available from
>>              http://www.amzi.com/ExpertSystemsInProlog
>>
>>     9. Are there any WWW archives of comp.lang.prolog ?
>>
>>     Yes, there are: Google Groups has archives of 
>> news://comp.lang.prolog/.
>>     They can be found at
>>     https://groups.google.com/forum/#!forum/comp.lang.prolog
>>
>>     10. How can I get the ISO Prolog standard? Where can I go for more
>>     information about it?
>>
>>     You can obtain the approved international standards from your 
>> national
>>     member body or directly from ISO (http://www.iso.org).
>>
>>     The working group on Prolog standardisation is ISO/IEC JTC1/SC22/WG17
>>     (http://www.sju.edu/~jhodgson/wg17/).
>>
>>     Contacts:
>>
>>            + Convenor of WG17: Ulrich Neumerkel
>>              (<ulrich@mips.complang.tuwien.ac.at>)
>>
>>     Further literature: "Prolog: The Standard (Reference manual)", P.
>>     Deransart, A. Ed-Dbali, L. Cervoni, Springer Verlag (1996). Extra
>>     information can be found on
>>     http://pauillac.inria.fr/~deransar/prolog/docs.html
>>
>>     
>> http://www-2.cs.cmu.edu/afs/cs.cmu.edu/project/ai-repository/ai/lang/pr
>>     olog/doc/standard/ contains the December 1991 draft, the March 1993
>>     draft, Michael Covington's summary of it, and Richard O'Keefe's 1984
>>     Prolog standard draft.
>>
>>     http://www.complang.tuwien.ac.at/ulrich/iso-prolog/ ISO Prolog works
>>     and related material by the convenor of WG17.
>>
>>     For questions about the standard, use this newsgroup or 
>> Stackoverflow.
>>
>>     11. 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). The
>>     book is out of print, and available online at
>>     http://wambook.sourceforge.net.
>>
>>     12. Is there a WWW page on logic programming?
>>
>>     Yes, there is one by Jonathan Bowen; the URL is
>>     http://www.afm.sbu.ac.uk/logic-prog/. He invites us to mail him at
>>     <jonathan.bowen@sbu.ac.uk> with any relevant information for 
>> inclusion.
>>
>>     A collection of artifacts from logic programming languages beginning
>>     with Marseille Prolog is available from
>>     http://www.softwarepreservation.org/projects/prolog/index.html
>>
>>     A large amount of Prolog code is available from the CMU AI 
>> Repository:
>>     
>> http://www.cs.cmu.edu/afs/cs/project/ai-repository/ai/lang/prolog/0.htm
>>     l
>>
>>     Recently, Stackoverflow has become a valuable resource for Prolog
>>     questions and answers: 
>> http://stackoverflow.com/questions/tagged/prolog
>>
>>     Another community resource is the #prolog IRC channel on
>>     irc.libera.chat.
>>
>>     13. Can I do Internet/WWW programming with Prolog?
>>
>>     Prolog is very suitable for this task. Several commercial and free
>>     implementations include special support for it. A page 
>> specifically on
>>     this topic (including some tutorials) is maintained at
>>     http://www.clip.dia.fi.upm.es/lpnet/lpnet.html. A public-domain 
>> library
>>     exists (PiLLoW) for several popular Prolog systems which helps in the
>>     task. See: http://www.clip.dia.fi.upm.es/Software/pillow/
>>
>>     14. Is there a WWW page with some tutorials on Prolog?
>>
>>     Beginner level:
>>
>>            + Adventure in Prolog:
>>              http://www.amzi.com/AdventureInProlog/advfrtop.htm
>>            + On-line guide to Prolog Programming:
>>              http://kti.ms.mff.cuni.cz/~bartak/prolog/index.html
>>            + Prolog Programming, A First Course:
>>              http://computing.unn.ac.uk/staff/cgpb4/prologbook/book.html
>>            + Learn Prolog Now!: http://www.learnprolognow.org
>>
>>     Intermediate to advanced level:
>>
>>            + https://skolemmachines.org/ThePrologTutorial/
>>
>>     15. How do I edit Prolog code?
>>
>>     Emacs and VIM ship with basic support for Prolog. A much improved 
>> Emacs
>>     mode is maintained by Stefan Bruda and available from
>>     https://bruda.ca/emacs/prolog_mode_for_emacs
>>
>>     Logtalk ships with various editing services for many common editors,
>>     also usable for Prolog.
>>
>>     SWI Prolog has a built-in Emacs clone called PceEmacs. There are also
>>     Emacs definitions that let you evaluate embedded queries:
>>     https://www.metalevel.at/ediprolog/. An SWI Prolog programming
>>     environment suitable for schools is available from
>>     http://lernen.bildung.hessen.de/informatik/swiprolog/indexe.htm
>>
>>     A Prolog plug-in for the "Eclipse"-IDE is available from:
>>     http://eclipse.ime.usp.br/projetos/grad/plugin-prolog/index.html
>>
>>     A sophisticated integrated editing and teaching environment with
>>     declarative debugging, termination analysis and many 
>> visualisations is
>>     available from http://www.complang.tuwien.ac.at/ulrich/gupu/
>>
>>     16. How do I publish Prolog code?
>>
>>     Logtalk ships with support for various syntax highlighters, also 
>> usable
>>     for Prolog. These include support for Pygments (used e.g. on Trac and
>>     GitHub), Rouge (use e.g. in GitLab), GeSHi (used e.g. on Wikis), 
>> minted
>>     and texments LaTeX packages (e.g. source code listings), Google Code
>>     Prettify, Source-highlight, Highlight, SyntaxHighlighter, and SHJS
>>     (JavaScript highlighter for e.g. web pages).
>>
>> 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.
>>
>>     Special thanks to Jamie Andrews, Dirk-Jan Faber and Remko Troncon, 
>> who
>>     have been maintaining and posting the FAQ in the past.
>>
> 

[toc] | [prev] | [next] | [standalone]


#14667 — Pet project Prolog-Omnibus I don't have any time (Was: Is ISO itself not simply a dialect?)

FromMild Shock <janburse@fastmail.fm>
Date2025-07-15 13:31 +0200
SubjectPet project Prolog-Omnibus I don't have any time (Was: Is ISO itself not simply a dialect?)
Message-ID<1055e6m$28o4s$1@solani.org>
In reply to#14666
The SuperProlog approach might still have
some problems with front facing parts of a
Prolog system. Like answer substitutions or
the debugger might not conveniently

understand set_prolog_flag(double_quotes,
chars). Whats the relation ship of SuperPrologs
and a dialect mechanism to prolog-all ?
Maybe SuperPrologs and their dialect
mechanism belongs to:

prolog-omnibus

Im am just trying to create a name for it,
although I have no time to create such a GitHub.
But it would be an interesting challenge how to
shell call a SuperProlog not only specifying

a Prolog text and a goal, but also a desired
dialect, the dialect the Prolog text is written
in? What makes a Prolog omnibus a little unstable,
Prolog systems usualy

also read a user .rc file, which can also do
some settings. So shell call might suffer some
impurity, or you might even rely from the beginning
to having some user .rc file

that does all the dialect choices.

Mild Shock schrieb:
> Dialect modules requires that you have a
> SuperProlog, that can manage different dialects.
> Currenty SuperPrologs are mostly ModulePrologs
> that just swap in additional predicate definitions,
> 
> also allow overwriting their own predicate
> definitions locally, in favor of some dialect
> predicate definition. And so own etc etc, I don't
> know how successful this approach, it might
> 
> then also require that set_prolog_flag/2 can work
> module locally, that you can do set_prolog_flag(
> double_quotes, chars) to have a Scryer, Trealla,
> etc. dialect, and set_prolog_flag(double_codes,
> 
> string) to have some SWI dialect, or
> set_prolog_flag(double_codes, codes) to have
> some ISO defaults dialect. For example an ISO dialect
> might have this definition in their commons module:
> 
> false :- fail.
> 
> Since the Corrigendum 2 came rather later, so
> some Prolog might have missed it, or balantly ignore
> it. The Corrigendum 2 came 2012, but the ISO
> standard was from 1995. Thats a gap
> 
> of almost 20 years. Quite amazing nonsense.
> 
> Mild Shock schrieb:
>> I have no useful advice in writing portable
>> Prolog code. There is also the concept of dialects
>> and dialect modules, implemented by SWI-Prolog,
>>
>> ECLiPSe Prolog, etc.. You can declare a module
>> written in some dialect:
>>
>> :- module(+Module, +PublicList, +Dialect)
>> https://www.swi-prolog.org/pldoc/doc_for?object=module/3
>>
>> I think Logtalk cannot do this. Logtalk would require
>> that you convert your code to Logtalk, where as
>> the dialect approach requires you do nothing.
>>
>> Logtalk has the stance that a dialect sits in the
>> backend and not in the front end. Its not a
>> SuperProlog, it only has this idea:
>>
>> prolog_dialect
>> Identifier of the backend Prolog compiler (an atom).
>> This flag can be used for conditional compilation of
>> Prolog compiler specific code.
>> https://logtalk.org/manuals/userman/programming.html#compiler-flags
>>
>> Markus Triska schrieb:
>>>                   Frequently Asked Questions - comp.lang.prolog
>>>
>>>     Last-modified: 2022-02-24
>>>     Last-changes: Update link to tutorial by J.R. Fisher. Geoffrey 
>>> Churchill.
>>>
>>> Markus Triska (Mar. 2 2007 - ... )
>>>
>>> Remko Troncon (Jan. 6 2002 - Mar. 2 2007)
>>>
>>> Dirk-Jan Faber (Feb. 1 1999 - Jan. 6 2002)
>>>
>>> Jamie Andrews (Aug 26 1992 - Oct. 16 1997)
>>>       __________________________________________________________________
>>>
>>>       General Information: This article contains the answers to some
>>>       Frequently Asked Questions (FAQ) often seen in
>>>       news://comp.lang.prolog/. It is posted (twice a month, 
>>> currently on
>>>       the 2nd 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://www.logic.at/prolog/faq/
>>>
>>>       Please send questions about the FAQ and updates to
>>>       <triska@logic.at>.
>>>
>>>     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 or send in
>>>     contributions, check http://www.cs.nmsu.edu/ALP/ or contact
>>>
>>>     Sandro Etalle <etalle@cs.utwente.nl>
>>>
>>>     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 used to be
>>>     posted periodically to news://comp.lang.prolog.
>>>
>>>     2. Where can I get a free Prolog for system X (PC, Mac, Unix or 
>>> other)?
>>>
>>>     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 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.)
>>>
>>>     ALF (Algebraic Logic Functional language)
>>>
>>>            + Platforms: UNIX
>>>            + Available: Unknown
>>>            + E-mail: Rudolf Opalla
>>>              <opalla@julien.informatik.uni-dortmund.de>
>>>            + Info: WAM-based language with narrowing/rewriting
>>>
>>>     Amzi! Prolog + Logic Server
>>>
>>>            + Platforms: Window, Linux and Solaris
>>>            + Available: http://www.amzi.com/download/
>>>            + E-mail: <info@amzi.com>
>>>            + Info: Registration is compulsory, except for the Free
>>>              Academic/Personal/Evaluation License.
>>>
>>>     Aquarius Prolog 1.0
>>>
>>>            + Platforms: UNIX
>>>            + Available: 
>>> http://www.info.ucl.ac.be/people/PVR/aquarius.html
>>>            + Info: High performance, commercial functionality except
>>>              debugging and modules.
>>>
>>>     Argo Prolog v.1.1
>>>
>>>            + Platforms: Solaris 1.x and HP-UX 9.x
>>>            + Available: Unknown
>>>            + Contact: Takao Doi <doi@csk.co.jp>
>>>
>>>     Arity/Prolog32
>>>
>>>            + Platforms: Win32
>>>            + Available: https://github.com/Peter-Gabel/ArityProlog32
>>>            + Info: Arity/Prolog32 provides a complete Prolog programming
>>>              environment in which you can write, debug, and run Prolog
>>>              programs in 32-bit Windows environments (95/98/NT/2000).
>>>              Arity/Prolog32 is a powerful, highly optimized, and 
>>> extended
>>>              version of the logic programming language Prolog.
>>>              Arity/Prolog32 is a complete compiler and interpreter 
>>> written
>>>              in Prolog, C, and Assembly language and is a superset of
>>>              Clocksin and Mellish Prolog.
>>>
>>>     B-Prolog 8.1
>>>
>>>            + Platforms: Win32, Solaris, SunOS, UNIX, FreeBSD and Linux
>>>            + Available: http://www.probp.com/
>>>            + E-mail: Neng-Fa Zhou <support@probp.com>
>>>            + Info: Free of charge for individual users.
>>>
>>>     BinProlog 7.0
>>>
>>>            + Platforms: Windows 95/98/NT, Linux and all major Unix
>>>              platforms.
>>>            + Available: https://code.google.com/archive/p/binprolog/
>>>            + Info: Download free evaluation copies and see online demos.
>>>              Inexpensive Educational licensing available.Has built-in
>>>              networking, multi-threading, mobile code and distributed
>>>              blackboards. Supports BinNet Internet Programming Tool kit.
>>>
>>>     Brain Aid Prolog (BAP) v1.4
>>>
>>>            + Platforms: Transputer systems
>>>            + Info: BAP is a parallel prolog system for Transputer 
>>> systems.
>>>              Available under a Berkely style of copyright.
>>>
>>>     C#Prolog
>>>
>>>            + Platforms: Win32, UNIX
>>>            + Available: http://sourceforge.net/projects/cs-prolog/
>>>            + E-mail: John Pool <j.pool@ision.nl>
>>>            + Info: A Prolog interpreter written in C#. Can easily be
>>>              integrated in C# programs. Characteristics: reliable and 
>>> quite
>>>              fast beta version, command line interface, builtin DCG,
>>>              XML-predicates, persistent predicates (using Firebird 
>>> RDBMS),
>>>              extendible.
>>>
>>>     Ciao 1.4
>>>
>>>            + Platforms: Linux, Win32 (95/98/NT), Solaris, SunOS, UNIX in
>>>              general.
>>>            + Available: http://ciao-lang.org
>>>            + E-mail: Developers <ciao@clip.dia.fi.upm.es>, Users
>>>              <ciao-users@clip.dia.fi.upm.es>
>>>            + Info: Next generation LP/CLP system. Commercial 
>>> functionality,
>>>              but freely available w/source. ISO-Prolog + modules,
>>>              networking, multi-threading, clp(r), clp(q), interfaces 
>>> (Java,
>>>              C, tcltk, WWW, databases/ODBC, ...), functions, 
>>> higher-order,
>>>              records, persistence, objects, assertions (types, modes, 
>>> ...),
>>>              source debugger, auto-documenter, static debugger, and 
>>> more.
>>>
>>>     clp(FD)
>>>
>>>            + Platforms: UNIX
>>>            + Contact: Daniel Diaz <daniel.diaz@inria.fr>
>>>            + Info: Constraint logic programming over finite domains.
>>>              Requires GNU C v.2.4.5 or higher.
>>>
>>>     clp(FD,S)
>>>
>>>            + Platforms: UNIX
>>>            + Contact: Yan Georget <Yan.Georget@inria.fr>
>>>            + Info: Requires GNU C (gcc) version 2.4.5. or higher.
>>>
>>>     CLP(R)
>>>
>>>            + Platforms: UNIX
>>>            + Available: E-mail request from Joxan Jaffar
>>>              <joxan@watson.ibm.com>.
>>>            + Info: Constraint logic programming language, for 
>>> academic and
>>>              research purposes only.
>>>
>>>     CxProlog
>>>
>>>            + Platforms: UNIX, MacOS X, Windows
>>>            + Available: http://ctp.di.fct.unl.pt/~amd/cxprolog/
>>>            + Info: Open source (GPL) implementation supporting Unicode,
>>>              threads, sockets, processes, contexts, imperative data
>>>              structures, and interfaces with C/C++, Java, and wxWidgets
>>>            + Contact: Artur Miguel Dias <amd@fct.unl.pt>
>>>
>>>     ECLiPSe Constraint Logic Programming System, subsuming Prolog.
>>>
>>>            + Platforms: Solaris, Linux, Linux/Alpha, Mac OS X, Windows
>>>            + Available: http://eclipseclp.org or
>>>              http://www.sourceforge.net/projects/eclipse-clp
>>>            + Info: ECLiPSe is a Prolog and Constraint Programming 
>>> platform
>>>              with a long history and has been open-source since Sept 
>>> 2006.
>>>            + License: MPL
>>>
>>>     IF Prolog V5.3
>>>
>>>            + Platforms: Windows 95/98/NT/2000/XP, Linux, Solaris, AIX,
>>>              HP-UX and other UNIX platforms
>>>            + Available: http://www.ifcomputer.de/Products/Prolog/
>>>            + E-mail: <info@ifcomputer.de>
>>>            + Info: IF Prolog is a commercial Prolog system with 
>>> interfaces
>>>              to C/C++, Java, sockets, Windows events and a COM 
>>> servers. A
>>>              graphical debugger allows step-forward, step backward
>>>              debugging of Prolog code. A static module concept allows 
>>> many
>>>              additional errors to be detected at compile time. 
>>> Constraint
>>>              Programming (for finite domains, intervals and booleans 
>>> using
>>>              global constraints and linear optimisation).
>>>            + License: Free evaluation copies and inexpensive educational
>>>              licensing available.
>>>
>>>     GNU Prolog
>>>
>>>            + Platforms: Many Unixes, Windows, MacOS X
>>>            + Available: http://www.gprolog.org/
>>>            + E-mail: Daniel Diaz <daniel.diaz@inria.fr>
>>>
>>>     Jinni 2.27
>>>
>>>            + Platforms: Java-based
>>>            + Available: https://github.com/heathmanb/JinniProlog
>>>            + Info: Multi-threaded, Java based Prolog interpreter with
>>>              built-in networking, distributed blackboards and mobile 
>>> code
>>>              (inexpensive shareware licensing available).
>>>
>>>     JIProlog
>>>
>>>            + Platforms: Java-based
>>>            + Available: http://www.jiprolog.com/
>>>            + Info: Java Internet Prolog is a cross-platform pure Java 
>>> 100%
>>>              prolog interpreter that supplies Java world with the 
>>> power of
>>>              prolog language and provides prolog language with a 
>>> technology
>>>              to implement new predicates in Java.
>>>
>>>     KLIC
>>>
>>>            + Platforms: UNIX
>>>            + Info: ICOT Free Software. Concurrent logic programming. 
>>> Tested
>>>              on Sparcs, DEC 7000, Gateway P5-60.
>>>            + Contact: <ifs@icot.or.jp>
>>>
>>>     LPA Win-Prolog, demo version
>>>
>>>            + Platforms: Windows
>>>            + Available: Available from http://www.lpa.co.uk/ind_dow.htm
>>>
>>>     MINERVA
>>>
>>>            + Platforms: Java
>>>            + Info: Proprietary commercial ISO-Prolog Compiler in 100% 
>>> Java
>>>              support for web programming, XML, servlets, applets,
>>>              standalones. Free evaluation license.
>>>
>>>     Modular SB-Prolog (= SB-Prolog version 3.1 plus modules)
>>>
>>>            + Platforms: SPARC, DECstation, MIPS, HP 9000 series, Sun 3.
>>>            + Info: Copy-lefted.
>>>
>>>     Open Prolog
>>>
>>>            + Platforms: Apple Macintosh
>>>            + Available: http://www.cs.tcd.ie/open-prolog/
>>>            + E-mail: <brady@cs.tcd.ie>. (Michael Brady).
>>>
>>>     Poplog Prolog
>>>
>>>            + Platforms: Various Unixes, including Sun, Dec Alpha, HP and
>>>              many others. Also a Win32 version is available. Sources
>>>              available for other combinations.
>>>            + Available: At the Free Poplog Web/FTP site, including full
>>>              sources
>>>              http://www.cs.bham.ac.uk/research/poplog/freepoplog.html
>>>            + E-mail: queries may be posted to news://comp.lang.pop/, 
>>> or to
>>>              <pop-forum@cs.bham.ac.uk> or <A.Sloman@cs.bham.ac.uk> (Last
>>>              resort!)
>>>            + Info: Robust incremental compiler, part of the 
>>> multi-language
>>>              Poplog system (including Common Lisp, Pop-11 and 
>>> Standard ML).
>>>              Unix, Linux & VMS versions include full support for X 
>>> window
>>>              facilities/Motif. More information at
>>>              http://www.cs.bham.ac.uk/research/poplog/poplog.info.html
>>>              Licence modelled on XFree86. Can be freely distributed, 
>>> though
>>>              copyright is owned by Sussex University and ISL.
>>>
>>>     PIE2
>>>
>>>            + Platforms: Unknown
>>>            + Available: On CompuServe in the AIEXPERT forum, interpreter
>>>              and examples in PIE2.ZIP, documentation in PIEDOC.ZIP.
>>>            + E-mail: Brent Ruggles <ruggles@shell.com>
>>>
>>>     QuProlog
>>>
>>>            + Platforms: UNIX, Linux, beta for MAC
>>>            + Available:
>>>              http://www.itee.uq.edu.au/~pjr/HomePages/QuPrologHome.html
>>>            + E-mail: <pjr@itee.uq.edu.au>
>>>            + Info: Extended WAM with support for quantifiers and
>>>              substitutions, multi-threaded, high-level communication.
>>>
>>>     Scryer Prolog
>>>
>>>            + Platforms: Unix, Linux, Windows and Mac
>>>            + Available: https://github.com/mthom/scryer-prolog
>>>            + Info: A modern Prolog system written mostly in Rust.
>>>
>>>     Strawberry Prolog
>>>
>>>            + Platforms: Windows 95/NT, plans for UNIX and Macintosh
>>>            + Available: http://www.dobrev.com/
>>>            + E-mail: <dimiter@dobrev.com>
>>>
>>>     SWI Prolog
>>>
>>>            + Platforms: Binaries for Linux, Windows 
>>> (NT/2000/XP/Vista) and
>>>              Mac OS X (darwin). Sources: ANSI-C, both 32 and 64-bit
>>>              machines, compiles on almost all Unix systems and more.
>>>            + Available: http://www.swi-prolog.org
>>>            + Info: Complete, ISO and Edinburgh standard, common
>>>              optimizations, GC including atoms. Portable graphics, 
>>> multiple
>>>              threads, constraints, comprehensive libraries for 
>>> (semantic)
>>>              web programming, Unicode, source-level debugger, advanced
>>>              syntax colouring
>>>            + License: Simplified BSD. Run license/0 for more 
>>> information.
>>>
>>>     Tau Prolog
>>>
>>>            + Platforms: Web-based
>>>            + Available: http://tau-prolog.org/
>>>            + Info: An open source Prolog interpreter in JavaScript.
>>>
>>>     Trinc-Prolog
>>>
>>>            + Platforms: Windows 95/98/NT 4.0, plans for Windows 2000, 
>>> Linux
>>>              and Sun Solaris
>>>            + E-mail: <info@trinc-prolog.com>
>>>
>>>     Visual Prolog
>>>
>>>            + Platforms: Win32
>>>            + Available: http://www.visual-prolog.com
>>>            + Info: Includes all the facilities necessary to write 
>>> mission
>>>              critical commercial-grade applications. Fully visual
>>>              development environment. Open architecture. 
>>> Object-oriented.
>>>              Built-in database system and ODBC support. Visual Prolog
>>>              Personal Edition is available on a freeware license.
>>>
>>>     wamcc
>>>
>>>            + Platforms: UNIX
>>>            + Info: Compiler which translates Prolog to C via WAM.
>>>              Debuggers. Requires GNU C v.2.4.5 or higher.
>>>            + Contact: Daniel Diaz <daniel.diaz@inria.fr>
>>>
>>>     XGP
>>>
>>>            + Platforms: Apple Macintosh OS X, 10.2.3+
>>>            + Available: http://xgp.sourceforge.net/
>>>            + Info: XGP is an open source (GPL) integrated development
>>>              environment with user interface and graphics support 
>>> based on
>>>              gprolog and Cocoa under Macintosh OS X.
>>>
>>>     XSB
>>>
>>>            + Platforms: Many, including SunOS, Linux and Windows
>>>            + Available: http://xsb.sourceforge.net/
>>>            + E-mail: <xsb-users@lists.sourceforge.net>
>>>            + Info: system with SLG-resolution, HiLog syntax, and
>>>              unification factoring.
>>>
>>>     Yap
>>>
>>>            + Platforms: UNIX-based platforms and Windows
>>>            + Available: https://github.com/vscosta/yap-6.3
>>>            + E-mail: Vitor Santos Costa <vsc@ncc.up.pt>
>>>            + Info: Yap is entirely written in C and Prolog and should be
>>>              portable to most 32-bit and 64-bit Unix based platforms. A
>>>              Windows port is also available. Yap4.2 is distributed under
>>>              Perl's artistic license and can be freely distributed.
>>>
>>>     3. What commercial systems are available? What about systems 
>>> available
>>>     for a price from research institutions?
>>>
>>>     Many commercial systems are listed in the Prolog Resource Guide. The
>>>     Resource Guide also lists many systems which are not exactly
>>>     "commercial", but available for a price from research 
>>> institutions. 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 Prolog Resource Guide hasn't been updated lately, but 
>>> nevertheless
>>>     still contains some valuable information. It can be found at
>>>     
>>> http://www-2.cs.cmu.edu/Groups/AI/html/faqs/lang/prolog/prg/top.html.
>>>
>>>     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.
>>>
>>>     ALS (Applied Logic Systems)
>>>
>>>            + Web site: http://alsprolog.com
>>>
>>>     Amzi! inc.
>>>
>>>            + Web site: http://www.amzi.com
>>>            + Information: <info@amzi.com>
>>>            + Sales: <sales@amzi.com>
>>>            + Support: <support@amzi.com>
>>>
>>>     Arity/Prolog32
>>>
>>>            + Web site: https://github.com/Peter-Gabel/ArityProlog32
>>>
>>>     Ciao, PiLLoW, WebDB, etc.
>>>
>>>            + Web site: http://www.clip.dia.fi.upm.es/Software
>>>            + Users' group: <ciao-users@clip.dia.fi.upm.es>
>>>            + Information: <ciao@clip.dia.fi.upm.es>
>>>            + Tech support: <ciao-bugs@clip.dia.fi.upm.es>
>>>
>>>     COSYTEC (CHIP V5)
>>>
>>>            + Web site: http://www.cosytec.com
>>>            + Information: <info@cosytec.com> (or .fr)
>>>            + Tech Support: <support@cosytec.com> (or .fr)
>>>
>>>     ECLiPSe
>>>
>>>            + Web site: http://eclipseclp.org
>>>            + Users' group: <eclipse-clp-users@lists.sf.net>
>>>            + Tech support: <http://eclipseclp.org/bugs.html>
>>>            + Support contracts: <info@coninfer.com>
>>>
>>>     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>
>>>
>>>     GNU Prolog
>>>
>>>            + Web site: http://www.gprolog.org/
>>>            + Users' group: <users-prolog-request@gnu.org>
>>>            + Bug reports: <bug-prolog@gnu.org>
>>>
>>>     LPA
>>>
>>>            + Web site: http://www.lpa.co.uk/
>>>            + Sales: <sales@lpa.co.uk>
>>>            + Tech support: <support@lpa.co.uk>
>>>
>>>     MasterProLog
>>>
>>>            + Formerly BIM ProLog
>>>
>>>     PDC Prolog
>>>
>>>            + PDC Prolog is the succesor to Turbo Prolog and the 
>>> predecessor
>>>              to Visual Prolog.
>>>
>>>     ProLog by BIM
>>>
>>>            + Currently MasterProLog
>>>
>>>     Quintus
>>>
>>>            + Web site: http://quintus.sics.se
>>>            + Mailing list: see
>>>              http://www.sics.se/isl/quintuswww/site/community.html
>>>            + Sales: <qpsales@sics.se>
>>>            + Tech support: <qpsupport@sics.se>
>>>
>>>     SICStus
>>>
>>>            + Web page: http://www.sics.se/sicstus
>>>            + Mailing list: see
>>>              http://www.sics.se/isl/sicstuswww/site/community.html
>>>            + Sales: <sicstus-request@sics.se>
>>>            + Tech support: <sicstus-support@sics.se>
>>>
>>>     Trinc / Trinc-Prolog
>>>
>>>            + Information: <info@trinc-prolog.com>
>>>            + Sales: <sales@trinc-prolog.com>
>>>            + Support: <support@trinc-prolog.com>
>>>
>>>     Turbo Prolog
>>>
>>>            + Turbo Prolog is the predecessor of PDC Prolog (see above).
>>>
>>>     Visual Prolog
>>>
>>>            + Web site: http://www.visual-prolog.com/
>>>            + Information: <sales@pdc.dk> (or <sales@visual-prolog.com>)
>>>            + Sales: <sales@pdc.dk> (or <sales@visual-prolog.com>)
>>>            + Tech support: <support@pdc.dk> (or
>>>              <support@visual-prolog.com>)
>>>
>>>     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, note that there are many different "Prologs" and other logic
>>>     programming languages available, all with different capabilities.
>>>
>>>     6. What are the recent developments?
>>>
>>>     There are some languages in development which do not have Prolog
>>>     syntax, but do subsume and generalize Prolog's logic programming
>>>     abilities.
>>>
>>>     Mercury
>>>
>>>            + Web site: http://www.mercury.cs.mu.oz.au/index.html
>>>
>>>     The Mozart Consortium:
>>>
>>>            + Web site: http://mozart.github.io/
>>>            + Mailing lists: <http://mozart.github.io/mailing-lists/>
>>>
>>>     Some other languages bring new developments while also supporting
>>>     Prolog syntax and functionality as an option:
>>>
>>>     Ciao
>>>
>>>            + Web site: http://www.clip.dia.fi.upm.es/Software
>>>            + Users' group: <ciao-users@clip.dia.fi.upm.es>
>>>            + Information: <ciao@clip.dia.fi.upm.es>
>>>            + Tech support: <ciao-bugs@clip.dia.fi.upm.es>
>>>
>>>     Logtalk
>>>
>>>            + Web site: http://logtalk.org/
>>>            + E-mail: Paulo Moura <pmoura@logtalk.org>
>>>            + Info: Open source object-oriented extension to Prolog
>>>              compatible with most Prolog compilers.
>>>
>>>     7. 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 news://comp.lang.prolog/ readers who 
>>> would
>>>     be glad to help people making a legitimate attempt to learn Prolog.
>>>
>>>     8. Can you suggest some books on Prolog?
>>>
>>>     The Prolog Resource Guide (see above) contains a listing of Prolog
>>>     books. It is maintained by Mark Kantrowitz
>>>     (<Mark.Kantrowitz@glinda.oz.cs.cmu.edu>), and posted periodically on
>>>     news://comp.lang.prolog.
>>>
>>>     Here are some of the most popular books on Prolog.
>>>
>>>     Introductory
>>>
>>>            + "Programming In Prolog". William F. Clocksin and 
>>> Christopher
>>>              S. Mellish. Springer-Verlag, 2003 (5th ed).
>>>            + "Prolog for Programmers". Feliks Kluzniak and Stanislaw
>>>              Szpakowicz. Academic Press, London, 1985, now available
>>>              without charge from
>>>              https://sites.google.com/site/prologforprogrammers/
>>>            + "Prolog Programming for Artificial Intelligence". Ivan 
>>> Bratko.
>>>              Addison-Wesley, 2001 (3rd ed).
>>>
>>>     Advanced
>>>
>>>            + "The Art of Prolog: Advanced Programming Techniques". Leon
>>>              Sterling and Ehud Shapiro. MIT Press, 1994 (2nd ed).
>>>            + "The Craft of Prolog". Richard A. O'Keefe. MIT Press, 1990.
>>>
>>>     Logic programming theory
>>>
>>>            + "Foundations of Logic Programming". John Lloyd.
>>>              Springer-Verlag, 1988 (2nd ed).
>>>            + "Logic, Programming and Prolog". Ulf Nilsson and Jan
>>>              Maluszynski. Originally published by John Wiley & Sons Ltd
>>>              (2nd ed. 1995) and now available without charge from
>>>              http://www.ida.liu.se/~ulfni/lpp
>>>
>>>     Expert Systems
>>>
>>>            + "Building Expert Systems in Prolog". Dennis Merritt.
>>>              Springer-Verlag, 1989. HTML & PDF versions available from
>>>              http://www.amzi.com/ExpertSystemsInProlog
>>>
>>>     9. Are there any WWW archives of comp.lang.prolog ?
>>>
>>>     Yes, there are: Google Groups has archives of 
>>> news://comp.lang.prolog/.
>>>     They can be found at
>>>     https://groups.google.com/forum/#!forum/comp.lang.prolog
>>>
>>>     10. How can I get the ISO Prolog standard? Where can I go for more
>>>     information about it?
>>>
>>>     You can obtain the approved international standards from your 
>>> national
>>>     member body or directly from ISO (http://www.iso.org).
>>>
>>>     The working group on Prolog standardisation is ISO/IEC 
>>> JTC1/SC22/WG17
>>>     (http://www.sju.edu/~jhodgson/wg17/).
>>>
>>>     Contacts:
>>>
>>>            + Convenor of WG17: Ulrich Neumerkel
>>>              (<ulrich@mips.complang.tuwien.ac.at>)
>>>
>>>     Further literature: "Prolog: The Standard (Reference manual)", P.
>>>     Deransart, A. Ed-Dbali, L. Cervoni, Springer Verlag (1996). Extra
>>>     information can be found on
>>>     http://pauillac.inria.fr/~deransar/prolog/docs.html
>>>
>>> http://www-2.cs.cmu.edu/afs/cs.cmu.edu/project/ai-repository/ai/lang/pr
>>>     olog/doc/standard/ contains the December 1991 draft, the March 1993
>>>     draft, Michael Covington's summary of it, and Richard O'Keefe's 1984
>>>     Prolog standard draft.
>>>
>>>     http://www.complang.tuwien.ac.at/ulrich/iso-prolog/ ISO Prolog works
>>>     and related material by the convenor of WG17.
>>>
>>>     For questions about the standard, use this newsgroup or 
>>> Stackoverflow.
>>>
>>>     11. 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). The
>>>     book is out of print, and available online at
>>>     http://wambook.sourceforge.net.
>>>
>>>     12. Is there a WWW page on logic programming?
>>>
>>>     Yes, there is one by Jonathan Bowen; the URL is
>>>     http://www.afm.sbu.ac.uk/logic-prog/. He invites us to mail him at
>>>     <jonathan.bowen@sbu.ac.uk> with any relevant information for 
>>> inclusion.
>>>
>>>     A collection of artifacts from logic programming languages beginning
>>>     with Marseille Prolog is available from
>>>     http://www.softwarepreservation.org/projects/prolog/index.html
>>>
>>>     A large amount of Prolog code is available from the CMU AI 
>>> Repository:
>>> http://www.cs.cmu.edu/afs/cs/project/ai-repository/ai/lang/prolog/0.htm
>>>     l
>>>
>>>     Recently, Stackoverflow has become a valuable resource for Prolog
>>>     questions and answers: 
>>> http://stackoverflow.com/questions/tagged/prolog
>>>
>>>     Another community resource is the #prolog IRC channel on
>>>     irc.libera.chat.
>>>
>>>     13. Can I do Internet/WWW programming with Prolog?
>>>
>>>     Prolog is very suitable for this task. Several commercial and free
>>>     implementations include special support for it. A page 
>>> specifically on
>>>     this topic (including some tutorials) is maintained at
>>>     http://www.clip.dia.fi.upm.es/lpnet/lpnet.html. A public-domain 
>>> library
>>>     exists (PiLLoW) for several popular Prolog systems which helps in 
>>> the
>>>     task. See: http://www.clip.dia.fi.upm.es/Software/pillow/
>>>
>>>     14. Is there a WWW page with some tutorials on Prolog?
>>>
>>>     Beginner level:
>>>
>>>            + Adventure in Prolog:
>>>              http://www.amzi.com/AdventureInProlog/advfrtop.htm
>>>            + On-line guide to Prolog Programming:
>>>              http://kti.ms.mff.cuni.cz/~bartak/prolog/index.html
>>>            + Prolog Programming, A First Course:
>>>              http://computing.unn.ac.uk/staff/cgpb4/prologbook/book.html
>>>            + Learn Prolog Now!: http://www.learnprolognow.org
>>>
>>>     Intermediate to advanced level:
>>>
>>>            + https://skolemmachines.org/ThePrologTutorial/
>>>
>>>     15. How do I edit Prolog code?
>>>
>>>     Emacs and VIM ship with basic support for Prolog. A much improved 
>>> Emacs
>>>     mode is maintained by Stefan Bruda and available from
>>>     https://bruda.ca/emacs/prolog_mode_for_emacs
>>>
>>>     Logtalk ships with various editing services for many common editors,
>>>     also usable for Prolog.
>>>
>>>     SWI Prolog has a built-in Emacs clone called PceEmacs. There are 
>>> also
>>>     Emacs definitions that let you evaluate embedded queries:
>>>     https://www.metalevel.at/ediprolog/. An SWI Prolog programming
>>>     environment suitable for schools is available from
>>>     http://lernen.bildung.hessen.de/informatik/swiprolog/indexe.htm
>>>
>>>     A Prolog plug-in for the "Eclipse"-IDE is available from:
>>>     http://eclipse.ime.usp.br/projetos/grad/plugin-prolog/index.html
>>>
>>>     A sophisticated integrated editing and teaching environment with
>>>     declarative debugging, termination analysis and many 
>>> visualisations is
>>>     available from http://www.complang.tuwien.ac.at/ulrich/gupu/
>>>
>>>     16. How do I publish Prolog code?
>>>
>>>     Logtalk ships with support for various syntax highlighters, also 
>>> usable
>>>     for Prolog. These include support for Pygments (used e.g. on Trac 
>>> and
>>>     GitHub), Rouge (use e.g. in GitLab), GeSHi (used e.g. on Wikis), 
>>> minted
>>>     and texments LaTeX packages (e.g. source code listings), Google Code
>>>     Prettify, Source-highlight, Highlight, SyntaxHighlighter, and SHJS
>>>     (JavaScript highlighter for e.g. web pages).
>>>
>>> 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.
>>>
>>>     Special thanks to Jamie Andrews, Dirk-Jan Faber and Remko 
>>> Troncon, who
>>>     have been maintaining and posting the FAQ in the past.
>>>
>>
> 

[toc] | [prev] | [next] | [standalone]


#14890 — ANN: Go Fund Me for ISO Core Standard of Prolog (Re: Is ISO itself not simply a dialect?)

FromMild Shock <janburse@fastmail.fm>
Date2025-10-09 18:10 +0200
SubjectANN: Go Fund Me for ISO Core Standard of Prolog (Re: Is ISO itself not simply a dialect?)
Message-ID<10c8mqj$p8ah$1@solani.org>
In reply to#14666
Hi,

We are happy to announce:

Go Fund Me for ISO Core Standard of Prolog
===========================================

"The power of Prolog—its elegant logic and unique
approach to problem-solving—should be accessible
to every curious mind, regardless of their
financial situation. Yet for many talented
students worldwide, the high cost of the
official ISO standard (approximately $220 USD)
creates a prohibitive barrier to a deep and
formal understanding of the language.

This Go Fund Me seeks to shatter that barrier.
Your contribution will directly sponsor access
to the ISO Prolog standard for students who
cannot afford it, ensuring that the next
generation of programmers, AI researchers,
and logic enthusiasts can learn from the
definitive source.

By investing in their education, you're
not just donating a document; you're fueling
innovation, diversifying the field, and
empowering the future pioneers of logic
programming. Let's ensure that a price tag
never stands in the way of a great idea."

For more information contact us at:

https://r.mtdv.me/giveaways/getisoprolog

Bye

P.S.: This Go Fund Me is not affiliated with
PEG 2.0 "The Prolog Education Group".

Mild Shock schrieb:
> Dialect modules requires that you have a
> SuperProlog, that can manage different dialects.
> Currenty SuperPrologs are mostly ModulePrologs
> that just swap in additional predicate definitions,
> 
> also allow overwriting their own predicate
> definitions locally, in favor of some dialect
> predicate definition. And so own etc etc, I don't
> know how successful this approach, it might
> 
> then also require that set_prolog_flag/2 can work
> module locally, that you can do set_prolog_flag(
> double_quotes, chars) to have a Scryer, Trealla,
> etc. dialect, and set_prolog_flag(double_codes,
> 
> string) to have some SWI dialect, or
> set_prolog_flag(double_codes, codes) to have
> some ISO defaults dialect. For example an ISO dialect
> might have this definition in their commons module:
> 
> false :- fail.
> 
> Since the Corrigendum 2 came rather later, so
> some Prolog might have missed it, or balantly ignore
> it. The Corrigendum 2 came 2012, but the ISO
> standard was from 1995. Thats a gap
> 
> of almost 20 years. Quite amazing nonsense.
> 

[toc] | [prev] | [next] | [standalone]


#14891 — Fuck Around and Find Out : SWI-Prolog Forum [Newline FAFO] (Was: ANN: Go Fund Me for ISO Core Standard of Prolog)

FromMild Shock <janburse@fastmail.fm>
Date2025-10-10 09:36 +0200
SubjectFuck Around and Find Out : SWI-Prolog Forum [Newline FAFO] (Was: ANN: Go Fund Me for ISO Core Standard of Prolog)
Message-ID<10cad15$q8r6$1@solani.org>
In reply to#14890
Hi,

How it started:

@jp-diegidio started obstructing my posts on
SWI-Prolog discourse forum, where I proposed
solutions to the new line problem, detailed
the quirks of Python universal newline.

How its going:

EricGT morons and other ban me from the
SWI-Prolog discourse forum on pretense of
aggressive behaviour. Still SWI-Prolog is
stuck with a brittle stream subsystem:

Random colorized code looks nice but isn’t helpful
@jp-diegidio: with a sole CR at the end
https://swi-prolog.discourse.group/t/random-colorized-code-looks-nice-
but-isnt-helpful/9347

"a sole CR" is exactly the newline case
that SWI-Prolog cannot handle well automatically.
How do we call this, FAFO, Fuck Around and Find Out?

F around and Find Out
https://www.youtube.com/watch?v=AOPZuXh-f5M

With morons on board like @jp-diegidio and
EricGT things only slow down, and will not
be fixed in due time.

Have Fun!

Bye

Mild Shock schrieb:
> Hi,
> 
> We are happy to announce:
> 
> Go Fund Me for ISO Core Standard of Prolog
> ===========================================
> 
> "The power of Prolog—its elegant logic and unique
> approach to problem-solving—should be accessible
> to every curious mind, regardless of their
> financial situation. Yet for many talented
> students worldwide, the high cost of the
> official ISO standard (approximately $220 USD)
> creates a prohibitive barrier to a deep and
> formal understanding of the language.
> 
> This Go Fund Me seeks to shatter that barrier.
> Your contribution will directly sponsor access
> to the ISO Prolog standard for students who
> cannot afford it, ensuring that the next
> generation of programmers, AI researchers,
> and logic enthusiasts can learn from the
> definitive source.
> 
> By investing in their education, you're
> not just donating a document; you're fueling
> innovation, diversifying the field, and
> empowering the future pioneers of logic
> programming. Let's ensure that a price tag
> never stands in the way of a great idea."
> 
> For more information contact us at:
> 
> https://r.mtdv.me/giveaways/getisoprolog
> 
> Bye
> 
> P.S.: This Go Fund Me is not affiliated with
> PEG 2.0 "The Prolog Education Group".
> 
> Mild Shock schrieb:
>> Dialect modules requires that you have a
>> SuperProlog, that can manage different dialects.
>> Currenty SuperPrologs are mostly ModulePrologs
>> that just swap in additional predicate definitions,
>>
>> also allow overwriting their own predicate
>> definitions locally, in favor of some dialect
>> predicate definition. And so own etc etc, I don't
>> know how successful this approach, it might
>>
>> then also require that set_prolog_flag/2 can work
>> module locally, that you can do set_prolog_flag(
>> double_quotes, chars) to have a Scryer, Trealla,
>> etc. dialect, and set_prolog_flag(double_codes,
>>
>> string) to have some SWI dialect, or
>> set_prolog_flag(double_codes, codes) to have
>> some ISO defaults dialect. For example an ISO dialect
>> might have this definition in their commons module:
>>
>> false :- fail.
>>
>> Since the Corrigendum 2 came rather later, so
>> some Prolog might have missed it, or balantly ignore
>> it. The Corrigendum 2 came 2012, but the ISO
>> standard was from 1995. Thats a gap
>>
>> of almost 20 years. Quite amazing nonsense.
>>

[toc] | [prev] | [next] | [standalone]


#14892 — Most Prolog Systems didn't solve it yet [Timer Trash] (Was: Fuck Around and Find Out : SWI-Prolog Forum)

FromMild Shock <janburse@fastmail.fm>
Date2025-10-10 09:48 +0200
SubjectMost Prolog Systems didn't solve it yet [Timer Trash] (Was: Fuck Around and Find Out : SWI-Prolog Forum)
Message-ID<10cado9$q9c9$1@solani.org>
In reply to#14891
Hi,

BTW: Most Prolog Systems didn't solve it yet.
Unlike the Java solution with a state machine.
There are also solutions, especially for the terminal,

that use a timer. Like if a CR arrives, and inside
a certain time internal no LF arrives, then its
recognized as sole CR inducing a <NEWLINE>.

Sounds good, doesn't work well. What if a the
content gets piped to the stdin and has this
"abnormal" sole CR, from an old Mac file maybe,

or from an editor that produces old Mac file format?

Bye

P.S.: The Java solution is quite straight
forward from Java class LineNumberReader since
JDK 1.1. I have used the realization trick

for a while in Jekejeke Prolog, with compressing
the CR, CR LF and LF unto LF. And in Dogelog
Player I even don't compress it anymore,

which of course challenges the Prolog tokenizer.

Mild Shock schrieb:
> Hi,
> 
> How it started:
> 
> @jp-diegidio started obstructing my posts on
> SWI-Prolog discourse forum, where I proposed
> solutions to the new line problem, detailed
> the quirks of Python universal newline.
> 
> How its going:
> 
> EricGT morons and other ban me from the
> SWI-Prolog discourse forum on pretense of
> aggressive behaviour. Still SWI-Prolog is
> stuck with a brittle stream subsystem:
> 
> Random colorized code looks nice but isn’t helpful
> @jp-diegidio: with a sole CR at the end
> https://swi-prolog.discourse.group/t/random-colorized-code-looks-nice-
> but-isnt-helpful/9347
> 
> "a sole CR" is exactly the newline case
> that SWI-Prolog cannot handle well automatically.
> How do we call this, FAFO, Fuck Around and Find Out?
> 
> F around and Find Out
> https://www.youtube.com/watch?v=AOPZuXh-f5M
> 
> With morons on board like @jp-diegidio and
> EricGT things only slow down, and will not
> be fixed in due time.
> 
> Have Fun!
> 
> Bye
> 
> Mild Shock schrieb:
>> Hi,
>>
>> We are happy to announce:
>>
>> Go Fund Me for ISO Core Standard of Prolog
>> ===========================================
>>
>> "The power of Prolog—its elegant logic and unique
>> approach to problem-solving—should be accessible
>> to every curious mind, regardless of their
>> financial situation. Yet for many talented
>> students worldwide, the high cost of the
>> official ISO standard (approximately $220 USD)
>> creates a prohibitive barrier to a deep and
>> formal understanding of the language.
>>
>> This Go Fund Me seeks to shatter that barrier.
>> Your contribution will directly sponsor access
>> to the ISO Prolog standard for students who
>> cannot afford it, ensuring that the next
>> generation of programmers, AI researchers,
>> and logic enthusiasts can learn from the
>> definitive source.
>>
>> By investing in their education, you're
>> not just donating a document; you're fueling
>> innovation, diversifying the field, and
>> empowering the future pioneers of logic
>> programming. Let's ensure that a price tag
>> never stands in the way of a great idea."
>>
>> For more information contact us at:
>>
>> https://r.mtdv.me/giveaways/getisoprolog
>>
>> Bye
>>
>> P.S.: This Go Fund Me is not affiliated with
>> PEG 2.0 "The Prolog Education Group".
>>
>> Mild Shock schrieb:
>>> Dialect modules requires that you have a
>>> SuperProlog, that can manage different dialects.
>>> Currenty SuperPrologs are mostly ModulePrologs
>>> that just swap in additional predicate definitions,
>>>
>>> also allow overwriting their own predicate
>>> definitions locally, in favor of some dialect
>>> predicate definition. And so own etc etc, I don't
>>> know how successful this approach, it might
>>>
>>> then also require that set_prolog_flag/2 can work
>>> module locally, that you can do set_prolog_flag(
>>> double_quotes, chars) to have a Scryer, Trealla,
>>> etc. dialect, and set_prolog_flag(double_codes,
>>>
>>> string) to have some SWI dialect, or
>>> set_prolog_flag(double_codes, codes) to have
>>> some ISO defaults dialect. For example an ISO dialect
>>> might have this definition in their commons module:
>>>
>>> false :- fail.
>>>
>>> Since the Corrigendum 2 came rather later, so
>>> some Prolog might have missed it, or balantly ignore
>>> it. The Corrigendum 2 came 2012, but the ISO
>>> standard was from 1995. Thats a gap
>>>
>>> of almost 20 years. Quite amazing nonsense.
>>>
> 

[toc] | [prev] | [next] | [standalone]


#14893 — Moron @jp-diegidio clueless about Unicode (UAX#14) [Re: Most Prolog Systems didn't solve it yet [Timer Trash] (Was: Fuck Around and Find Out : SWI-Prolog Forum)

FromMild Shock <janburse@fastmail.fm>
Date2025-10-10 10:22 +0200
SubjectMoron @jp-diegidio clueless about Unicode (UAX#14) [Re: Most Prolog Systems didn't solve it yet [Timer Trash] (Was: Fuck Around and Find Out : SWI-Prolog Forum)
Message-ID<10cafom$qalb$1@solani.org>
In reply to#14892
Hi,

Now the moron @jp-diegidio writes:

 > In general, on Windows or else, I suggest
setting up your code editor(s) to only use \n
as a newline for all text files, i.e. irrespective
of the programming language and even for the data files.

What a complete jerk. He doesn't understand
the modern world which the Unicode consortium
characterizes as follows:

"Newlines are represented on different platforms
by carriage return (CR), line feed (LF), CRLF, or
next line (NEL). Not only are newlines represented
by different characters on different platforms, but
they also have ambiguous behavior even on the
same platform. These characters are often transcoded
directly into the corresponding Unicode code points
when a character set is transcoded; this means that even
programs handling pure Unicode have to deal with
the problems. Especially with the advent of the Web,
where text on a single machine can arise from many
sources, this causes a significant problem."

He is totally clueless about Unicode standard,
such as the following to adress the significant problem:

"Newline Functions are defined in the Unicode
Standard as providing additional mandatory breaks.
They are not individual characters, but are encoded
as sequences of the control characters NEL, LF,
and CR. If a character sequence for a Newline
Function contains more than one character, it
is kept together."

Bye

See also:

CR: Carriage Return (Non-tailorable)
A CR indicates a mandatory break after, unless followed by a LF.
https://www.unicode.org/reports/tr14/#CR

Unicode® 17.0.0 2025 September 9
5.8 Newline Guidelines
https://www.unicode.org/versions/Unicode17.0.0/UnicodeStandard-17.0.pdf

Mild Shock schrieb:
> Hi,
> 
> BTW: Most Prolog Systems didn't solve it yet.
> Unlike the Java solution with a state machine.
> There are also solutions, especially for the terminal,
> 
> that use a timer. Like if a CR arrives, and inside
> a certain time internal no LF arrives, then its
> recognized as sole CR inducing a <NEWLINE>.
> 
> Sounds good, doesn't work well. What if a the
> content gets piped to the stdin and has this
> "abnormal" sole CR, from an old Mac file maybe,
> 
> or from an editor that produces old Mac file format?
> 
> Bye
> 
> P.S.: The Java solution is quite straight
> forward from Java class LineNumberReader since
> JDK 1.1. I have used the realization trick
> 
> for a while in Jekejeke Prolog, with compressing
> the CR, CR LF and LF unto LF. And in Dogelog
> Player I even don't compress it anymore,
> 
> which of course challenges the Prolog tokenizer.
> 
> Mild Shock schrieb:
>> Hi,
>>
>> How it started:
>>
>> @jp-diegidio started obstructing my posts on
>> SWI-Prolog discourse forum, where I proposed
>> solutions to the new line problem, detailed
>> the quirks of Python universal newline.
>>
>> How its going:
>>
>> EricGT morons and other ban me from the
>> SWI-Prolog discourse forum on pretense of
>> aggressive behaviour. Still SWI-Prolog is
>> stuck with a brittle stream subsystem:
>>
>> Random colorized code looks nice but isn’t helpful
>> @jp-diegidio: with a sole CR at the end
>> https://swi-prolog.discourse.group/t/random-colorized-code-looks-nice-
>> but-isnt-helpful/9347
>>
>> "a sole CR" is exactly the newline case
>> that SWI-Prolog cannot handle well automatically.
>> How do we call this, FAFO, Fuck Around and Find Out?
>>
>> F around and Find Out
>> https://www.youtube.com/watch?v=AOPZuXh-f5M
>>
>> With morons on board like @jp-diegidio and
>> EricGT things only slow down, and will not
>> be fixed in due time.
>>
>> Have Fun!
>>
>> Bye
>>
>> Mild Shock schrieb:
>>> Hi,
>>>
>>> We are happy to announce:
>>>
>>> Go Fund Me for ISO Core Standard of Prolog
>>> ===========================================
>>>
>>> "The power of Prolog—its elegant logic and unique
>>> approach to problem-solving—should be accessible
>>> to every curious mind, regardless of their
>>> financial situation. Yet for many talented
>>> students worldwide, the high cost of the
>>> official ISO standard (approximately $220 USD)
>>> creates a prohibitive barrier to a deep and
>>> formal understanding of the language.
>>>
>>> This Go Fund Me seeks to shatter that barrier.
>>> Your contribution will directly sponsor access
>>> to the ISO Prolog standard for students who
>>> cannot afford it, ensuring that the next
>>> generation of programmers, AI researchers,
>>> and logic enthusiasts can learn from the
>>> definitive source.
>>>
>>> By investing in their education, you're
>>> not just donating a document; you're fueling
>>> innovation, diversifying the field, and
>>> empowering the future pioneers of logic
>>> programming. Let's ensure that a price tag
>>> never stands in the way of a great idea."
>>>
>>> For more information contact us at:
>>>
>>> https://r.mtdv.me/giveaways/getisoprolog
>>>
>>> Bye
>>>
>>> P.S.: This Go Fund Me is not affiliated with
>>> PEG 2.0 "The Prolog Education Group".
>>>
>>> Mild Shock schrieb:
>>>> Dialect modules requires that you have a
>>>> SuperProlog, that can manage different dialects.
>>>> Currenty SuperPrologs are mostly ModulePrologs
>>>> that just swap in additional predicate definitions,
>>>>
>>>> also allow overwriting their own predicate
>>>> definitions locally, in favor of some dialect
>>>> predicate definition. And so own etc etc, I don't
>>>> know how successful this approach, it might
>>>>
>>>> then also require that set_prolog_flag/2 can work
>>>> module locally, that you can do set_prolog_flag(
>>>> double_quotes, chars) to have a Scryer, Trealla,
>>>> etc. dialect, and set_prolog_flag(double_codes,
>>>>
>>>> string) to have some SWI dialect, or
>>>> set_prolog_flag(double_codes, codes) to have
>>>> some ISO defaults dialect. For example an ISO dialect
>>>> might have this definition in their commons module:
>>>>
>>>> false :- fail.
>>>>
>>>> Since the Corrigendum 2 came rather later, so
>>>> some Prolog might have missed it, or balantly ignore
>>>> it. The Corrigendum 2 came 2012, but the ISO
>>>> standard was from 1995. Thats a gap
>>>>
>>>> of almost 20 years. Quite amazing nonsense.
>>>>
>>
> 

[toc] | [prev] | [next] | [standalone]


#14762 — ECliPSe Prolog not a SuperProlog (Was: There is something like SuperPrologs ? [SWI, ECLiPSe, etc..])

FromMild Shock <janburse@fastmail.fm>
Date2025-08-06 08:30 +0200
SubjectECliPSe Prolog not a SuperProlog (Was: There is something like SuperPrologs ? [SWI, ECLiPSe, etc..])
Message-ID<106usq5$3c6kk$1@solani.org>
In reply to#14665
Hi,

Woa! ECliPSe Prolog isn't well versed in
cyclic terms. It even gets into a state where
it cannot be anymore interrupted:

[eclipse 1]: X = f(X), Y = f(Y), X == Y.

Interrupt: [a]bort [b]reak [c]ontinue [e]ngines e[x]it ? [a]bort
Posting abort to running engine 1
Abort
[eclipse 2]: X = f(X), Y = f(Y), X = Y.

Interrupt: [a]bort [b]reak [c]ontinue [e]ngines e[x]it ? [a]bort
Posting abort to running engine 1
Abort
[eclipse 3]: X = f(X), Y = f(Y), compare(_, X, Y).

Interrupt: [a]bort [b]reak [c]ontinue [e]ngines e[x]it ? [a]bort
Posting abort to running engine 1

Where is the Abort from looping compare/3?
SWI Prolog terminates in all 3 calls. Although
the result it gives via compare/3 is sometimes

not very satisfying.

Bye

Mild Shock schrieb:
> I have no useful advice in writing portable
> Prolog code. There is also the concept of dialects
> and dialect modules, implemented by SWI-Prolog,
> 
> ECLiPSe Prolog, etc.. You can declare a module
> written in some dialect:
> 
> :- module(+Module, +PublicList, +Dialect)
> https://www.swi-prolog.org/pldoc/doc_for?object=module/3
> 
> I think Logtalk cannot do this. Logtalk would require
> that you convert your code to Logtalk, where as
> the dialect approach requires you do nothing.
> 
> Logtalk has the stance that a dialect sits in the
> backend and not in the front end. Its not a
> SuperProlog, it only has this idea:
> 
> prolog_dialect
> Identifier of the backend Prolog compiler (an atom).
> This flag can be used for conditional compilation of
> Prolog compiler specific code.
> https://logtalk.org/manuals/userman/programming.html#compiler-flags

[toc] | [prev] | [standalone]


Back to top | Article view | comp.lang.prolog


csiph-web