Jump to content

Prolog: Difference between revisions

From EDM2
Ak120 (talk | contribs)
Ak120 (talk | contribs)
Line 121: Line 121:


==Links==
==Links==
* [http://alain.colmerauer.free.fr/ Alain Colmerauer's homepage] - Has a cache of historical papers releated to Prolog
* [http://alain.colmerauer.free.fr/ Alain Colmerauer's homepage] - Has a cache of historical papers related to Prolog
* [https://github.com/Johnicholas/Hello-Github/tree/master/prolog-in-hundreds-of-loc/Boizumault Boizumault Prolog Archive on Github] - Contains the example Prolog implementations from his book (above)
* [https://github.com/Johnicholas/Hello-Github/tree/master/prolog-in-hundreds-of-loc/Boizumault Boizumault Prolog Archive on Github] - Contains the example Prolog implementations from his book (above)
* [https://dtai.cs.kuleuven.be/ppcbook/ The first 10 Prolog Programming Contests]
* [https://dtai.cs.kuleuven.be/ppcbook/ The first 10 Prolog Programming Contests]
Line 127: Line 127:


* ''Peter Skye'': [http://www.scoug.com/reports/ws98_bourassa.html Logic Programming In Native OS/2]
* ''Peter Skye'': [http://www.scoug.com/reports/ws98_bourassa.html Logic Programming In Native OS/2]
* http://www.learnprolognow.org/ Learn Prolog Now!] - Tutorial
* [http://www.learnprolognow.org/ Learn Prolog Now!] - Tutorial


* USENET: [news:comp.lang.prolog comp.lang.prolog]
* USENET: [news:comp.lang.prolog comp.lang.prolog]
Line 133: Line 133:
* [http://fsl.cs.illinois.edu/images/9/9c/PrologStandard.pdf A summary of the 1993 ISO Prolog draft]
* [http://fsl.cs.illinois.edu/images/9/9c/PrologStandard.pdf A summary of the 1993 ISO Prolog draft]


[[Category:Programming Languages]] [[Category:Prolog]]
[[Category:Programming Languages]][[Category:Prolog]]

Revision as of 20:21, 9 October 2019

Gottlob Frege (1848 ~ 1925)
Friedrich Ludwig Gottlob Frege invented predicate logic on which Prolog is based

Declarative logic programming language developed in France in the latter half of the 1960s and early 1970s, name is a shortening of "PROgrammation en LOGique" or "Programming in Logic". Unique syntax gives the impression that it is difficult to learn but in actuality it is not more of an effort to learn it any of the classic languages, but programmers used to procedural languages sometimes difficulty getting their heads around the different programming paradigms Prolog has to offer than rank beginner do.

Derivatives of Prolog include primarily constraint logic programming languages such as Prolog IV and ECLiPSE but also hybrids such as the strongly typed Mercury and Visual Prolog and even more alien systems such as Erlang.

History

Invented in Marseilles, France in 1972 by Alain Colmerauer and Philippe Rousse, the system is a descendant of a natural language machine translation system called Q-systems that Colmerauer started developing in 1968, but prior and parallel to that he alongside Rousse and others connected to the birth of Prolog such as Jean Trudel and Robert Pasero had participated in the "Traduction Automatique de l’Université de Montréal" project in Canada. Initially implemented on an IBM System/360 using Wirth's ALGOL W and PL/360.

OS/2 implementations

Commercial:

Open Source:

Prolog libraries

Foreign libraries with Prolog bindings

  • Cairo - 2D graphics library - Open source

DOS Implementations

Alain Colmerauer is the co-inventor of Prolog and the man behind the development of Prolog II, II+, III & IV
  • ALS Prolog - Was Commercial/now open source
  • Amzi! Prolog+Logic Server - Commercial
  • Aquarius Prolog - Open/Closed source
  • Arity Prolog - Commercial
  • Az-Prolog - Commercial
  • Beta-Prolog - Open Source
  • BinProlog - Open source commercial software
  • Boizumault Prolog - Open Source
  • ESL Prolog-2 - Commercial
  • Cogent Prolog Compiler - Commercial
  • cu-Prolog - Open Source
  • IF/Prolog - Commercial
  • LPA Prolog - Commercial
  • LPA micro-PROLOG - Commercial
  • Logicware MPROLOG - Commercial
  • MR Prolog - Commercial
  • PDC Prolog - Commercial
  • Prolog II - Commercial
  • Prolog III - Commercial
  • Chalcedony Prolog V/Prolog V-Plus - Commercial
  • Prolog-86+- Commercial
  • PD Prolog (A.D.A. PD Prolog) - Freeware
  • Quintus Prolog - Commercial
  • SICStus Prolog - Commercial
  • SNI Prolog - Commercial
  • Stony Brook Prolog - Aka SB-Prolog - Open source
  • Turbo Prolog - Commercial
  • VML Prolog - Commercial

Win-OS/2 Implementations

  • ALS Prolog - former commercial/now open source
  • Amzi! Logic Explorer - Freeware
  • Amzi! Prolog+Logic Server - Commercial
  • Arity Prolog - Commercial
  • IF/Prolog - Commercial - Discontinued - Contraint ver.
  • LPA Prolog - Commercial - Versions up to 4.1 run with Win32s
  • Prolog IV - Commercial
  • Visual Prolog - Commercial

Java Implementations

Commercial:

Open Source:

Editor support
  • jEdit - Java based editor - Prolog syntax highlighting built-in
Utilities
  • Prolog4J - Allows Java programs to use native Prolog engines - Open Source

Implementations in JavaScript

Publications

  • Feliks Kluźniak; Stanisław Szpakowicz: Prolog for Programmers - Academic Press 1987, ISBN 0-12-416521-4 [1]
  • Michael Spivey: An Introduction to Logic Programming through Prolog - Prentice-Hall 1996, ISBN 0-13-536047-1 [2]
  • Patrice Boizumault: The Implementation of Prolog- Translated by Ara M. Djamboulian and Jamal Fattouh - 1993/2014, ISBN 0-691-60939-X
  • Fernando C. N. Pereira; Stuart M. Shieber: Prolog and Natural-Language Analysis
Introductionary material
Papers

Links