Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > comp.lang.prolog > #14667
| From | Mild Shock <janburse@fastmail.fm> |
|---|---|
| Newsgroups | comp.lang.prolog |
| Subject | Pet project Prolog-Omnibus I don't have any time (Was: Is ISO itself not simply a dialect?) |
| Date | 2025-07-15 13:31 +0200 |
| Message-ID | <1055e6m$28o4s$1@solani.org> (permalink) |
| References | <fda96161124.070004@logic.at> <1055dp6$28nr1$1@solani.org> <1055dsp$28nr1$2@solani.org> |
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. >>> >> >
Back to comp.lang.prolog | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread
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
csiph-web