Languages Features Creators Calendar CSV Resources Blog About Pricing Add Language
GitHub icon

Prolog

Prolog - Programming language

< >

Prolog is a programming language created in 1972 by Alain Colmerauer.

#39on PLDB 51Years Old 51.5kUsers
100Books 23Papers 23kRepos

Try now: Riju

Prolog is a general-purpose logic programming language associated with artificial intelligence and computational linguistics. Prolog has its roots in first-order logic, a formal logic, and unlike many other programming languages, Prolog is intended as primarily a declarative programming language: the program logic is expressed in terms of relations, represented as facts and rules. A computation is initiated by running a query over these relations. Read more on Wikipedia...


Example from Riju:
:- initialization main. main :- write("Hello, world!"), nl.
Example from hello-world:
helloWorld :- write('Hello World'). :- helloWorld.
% Hello World in Prolog hello :- display('Hello World!') , nl .
Example from Linguist:
%6.8 subset(Set, Subset) :- append(L1, Subset, Set). powerset(Set, Subset) :- bagof(Subset, subset(Set, Subset), Subset).
Example from Wikipedia:
rule(q0, 1, q0, 1, right). rule(q0, b, qf, 1, stay).

Language features

Feature Supported Token Example
Binary Literals ✓
% 0b[01]+
Integers ✓
% \d\d?\'[a-zA-Z0-9]+
Floats ✓
% (\d+\.\d*|\d*\.\d+)([eE][+-]?[0-9]+)?
Hexadecimals ✓
% 0x[0-9a-fA-F]+
Octals ✓
% 0o[0-7]+
Case Sensitivity ✓
Strings ✓ '
'Hello world'
MultiLine Comments ✓ /* */
/* A comment
*/
Print() Debugging ✓ write
Line Comments ✓ %
% A comment
Macros ✓
term_expansion(parent_child(Parent, Child),
             child_parent(Child, Parent)).
parent_child(trevor, simon).
% With the above definitions, we can query (even though the predicate child_parent/2 is nowhere explicitly defined in the code above):
?- child_parent(Child, Parent).
 Child = simon, Parent = trevor.
Type Inference ✓
Comments ✓
Case Insensitive Identifiers X
Semantic Indentation X

Books about Prolog on goodreads

title author year reviews ratings rating
PROLOG: Programming for Artificial Intelligence Ivan Bratko 1986 4 166 3.75
Programming in PROLOG: Using the ISO Standard William F. Clocksin 1981 4 83 3.57
The Art of Prolog: Advanced Programming Techniques Leon Sterling 1994 2 22 3.91
The Art Of Prolog: Advanced Programming Techniques Leon Sterling 1986 2 43 3.79
Logic Programming with PROLOG Max Bramer 2005 0 16 3.56

Books about Prolog from ISBNdb

title authors year publisher
Learn Prolog Now! (Texts in Computing, Vol. 7) Patrick Blackburn and Johan Bos and Kristina Striegnitz 2006 College Publications
Prolog Programming for Artificial Intelligence Bratko, Ivan 1990 Addison-Wesley Pub (Sd)
Logic with Prolog (Oxford Applied Mathematics and Computing Science Series) Gibbins, Peter 1988 Oxford University Press
INTRODUCTION TO PROGRAMMING LANGUAGES: PRINCIPLES, C, C++, SCHEME AND PROLOG Yinong Chen 2003 Kendall Hunt Publishing
An Introduction to Natural Language Processing Through Prolog (Learning about Language) Matthews, Clive 1998 Routledge
Logic Programming with Prolog Bramer, Max 2005 Springer
The Practice of Prolog (Logic Programming) Sterling, Leon S. 2003 MIT Press
Computing With Logic: Logic Programming With Prolog Maier, David and Warren, David S. 1988 Addison-Wesley
Application Programming in Quintus Prolog Lucas, Robert 1993 Alfred Waller Ltd
Techniques of Prolog Programming with Implementation of Logical Negation and Quantified Goals Van Le, T. 1992 Wiley
Disc For Turbo Prolog Advanced Programming Techniques Hashim 1983 Tab Books
Clause and Effect: Prolog Programming for the Working Programmer Clocksin, William F. 1997 Springer
Concurrent Prolog - 2 Vol. Set: Collected Papers (logic Programming) Ehud Shapiro; with a foreword by Kazuhiro Fuchi 1988 The Mit Press
Productive Prolog Programming (prentice-hall International Series In Computer Science) Peter Schnupp 1987 Prentice-hall International
Prolog programming: Applications for database systems, expert systems, and natural language systems Marcus, Claudia 1986 Addison-Wesley Pub. Co
Introduction To Prolog R. P. Suri 2007 Alpha Science Intl Ltd
A Prolog Database System Li, Deyi , 1944- 1984 Research Studies Press Wiley
Prolog Programming In Depth Michael A. Covington and Donald Nute and Andre Vellino 1988 Scott Foresman & Co
Knowledge Systems Through Prolog Kim, Steven H. 1991 Oxford University Press
From Logic Programming to Prolog Apt, Krzysztof R. 1996 Prentice Hall
Prolog Programming Success in a Day: Beginners Guide to Fast, Easy and Efficient Learning of Prolog Programming Key, Sam 2015 CreateSpace Independent Publishing Platform
Concepts, Design, and Performance Analysis of a Parallel Prolog Machine (Lecture Notes in Computer Science (404)) Beer, Joachim 1989 Springer
Prolog Programming for Artificial Intelligence (4th Edition) (International Computer Science Series) Bratko, Ivan 2011-08-31T00:00:01Z Pearson Education Canada
Introduction to Programming Languages: Programming in C C++ Scheme Prolog C# and Python Chen, Yinong 2019-11-15T00:00:01Z Kendall Hunt Pub Co
Logic Programming with Prolog Bramer, Max 2013 Springer
Expert Systems in Prolog Merritt, Dennis 2017 Independently published
Programming in Prolog Clocksin, W. F. and Mellish, C. S. 1994 Springer-Verlag
The Practice of Prolog (Logic Programming) 1990 The MIT Press
Clause and Effect: Prolog Programming for the Working Programmer Clocksin, William F. 1997 Springer
Logic Programming with Prolog Bramer, Max 2013 Springer
Prolog Programming in Depth Covington, Michael A. and Nute, Donald and Vellino, Andre 1996 Prentice Hall
The Craft of Prolog (Logic Programming) O'Keefe, Richard 2009 The MIT Press
Prolog Programming for Artificial Intelligence Bratko, Ivan 2000 Pearson
The Craft of Prolog (Logic Programming) Richard A. O'Keefe 1990 The MIT Press
Programming in Prolog Clocksin, William F. 1984 Springer Berlin Heidelberg
Prolog programming for artificial intelligence (International computer science series) Bratko, Ivan 1986 Addison-Wesley
An Introduction to Programming in Prolog Saint-Dizier, Patrick 1989-12-18T00:00:01Z Springer
INTRODUCTION TO PROGRAMMING LANGUAGES: PRINCIPLES, C, C++, SCHEME AND PROLOG CHEN YINONG and TSAI WEI-TEK 2012-01-26T00:00:01Z Kendall Hunt Publishing
Prolog Programming Success In A Day Key, Sam 2015-08-26T00:00:01Z Lulu.com
Logic, Programming and Prolog Nilsson, Ulf and Maluszynski, Jan 1990 Wiley
Concurrent Prolog - Vol. 2: Collected Papers (Logic Programming) 1987 The MIT Press
Logic, Programming and Prolog Nilsson, Ulf and Maluszynski, Jan 1995 Wiley
Programming in PROLOG Clocksin, William F and Clocksin, W F and Mellish, C S 1987 Springer
Programming in Prolog Clocksin, W F 1987-12-31T00:00:01Z Springer-Verlag Berlin and Heidelberg GmbH & Co. K
An Introduction to Logic Programming Through Prolog (Prentice Hall International Series in Computer Science) Spivey, J. M. and Spivey, Michael 1996 Prentice Hall
Prolog for Natural Language Processing Gal, Annie and Lapalme, Guy and Saint-Dizier, Patrick and Somers, Harold 1991 Wiley
Prolog Programming for Students: With Expert Systems and Artificial Intelligence Topics Callear, David 2001 Cengage Learning EMEA
Agent-Oriented Programming: From Prolog to Guarded Definite Clauses (Lecture Notes in Computer Science (1630)) Huntbach, Matthew M. and Ringwood, Graem A. 1999 Springer
Prolog Programming and Applications (MacMillan Computer Science) Burnham, W. and Hall, Alex 1985 Palgrave HE UK
Advanced Turbo prolog programming Shafer, Dan 1987 H.W. Sams
Concurrent Prolog - Vol. 1: Collected Papers (Volume 1) (Logic Programming) 1987 The MIT Press
Prolog Programming for Students: With Expert Systems and Artificial Intelligence Topics Callear, David 2001 Thomson Learning
Programming in Prolog Clocksin, W. F 1981 Springer-Verlag
Prolog ++: The Power of Object-Oriented and Logic Programming (International Series in Logic Programming) Moss, Chris 1994 Addison-Wesley
Prolog : Programming for Artificial Intelligence, 3/e BRATKO 2021 PEARSON INDIA
Programming in PROLOG Clocksin, W. F. and Mellish, C. S. 1986 Springer-Verlag Telos
Prolog Versus You: An Introduction to Logic Programming Johansson, Anna-Lena and Eriksson-Granskog, Agneta and Edman, Anneli 1989 Springer
Programming In Prolog W. F. Clocksin and C. S. Mellish 2012 Springer Science & Business Media
Programming in Prolog Clocksin, William F. 1984-01-01T00:00:01Z Springer Berlin Heidelberg
Programming in Prolog William F. Clocksin; Christopher S. Mellish 20121206 Springer Nature
Adventure in Prolog (Springer Compass International) Merritt, Dennis 2011 Springer
Prolog and inductive reasoning: a logic programming language Alsmail, Kumeel Alsmail 2013 LAP LAMBERT Academic Publishing
Prolog Programming Nigel Ford 1989 Wiley
Further Programming Prolog Hepburn 1987 Longman Higher Education Division (a Pearson Education Company)
Programmer Passport: Prolog Bruce Tate 20220323 O'Reilly Media, Inc.
Prolog Programming And Applications 1985 Macmillan International Higher Education
Prolog Programming And Applications W. D Burnham 1985 Wiley
Logic Programming With Prolog Bramer and Max
Introduction To Turbo Prolog Carl Townsend
Problem Solving With Prolog John Stobo 20040114 CRC Press
The Implementation of Prolog Patrice Boizumault 20140714 Princeton University Press
Prolog Vlsi Implementations (logic Programming) Pierluigi Civera 1992-04-01 Mit Pr
Building Expert Systems in Prolog Dennis Merritt 2012 Springer-Verlag New York, LLC
Turbo Prolog Advanced Programming Techniques Safaa H Hashim 1988 Tab Books
Introduction To Programming In Prolog Danny Crookes 1988 Prentice Hall
PROLOG for Natural Language Processing John Wiley & Sons
Expert Systems Programming In Turbo Prolog Daniel H. Marcellus 1988 Prentice Hall
An Introduction To Programming In Prolog Patrick Saint-Dizier 2012 Springer Science & Business Media
An Introduction To Programming In Prolog Patrick Saint-dizier 1990 Springer-verlag Berlin And Heidelberg Gmbh & Co. K
Prolog And It's Applications (logic Programming Series) 1990 Mit Pr
Logic Programming: Prolog And Stream Parallel Languages Jan Newmarch 1990 Pearson Higher Education
Logic Programming: Prolog Its Appl Vid Pkg Kowalski 1986 Addison-wesley Professional
Programming Languages: Paradigm And Practice: Prolog Minimanual Appleby 1996 Mcgraw Hill Higher Education
Prolog Through Examples: A Practical Programming Guide I. Kononenko and N. Lavrac 1988 Sigma Press
Programming Languages: Paradigm And Practice: Prolog Mini-manual J.k 1991 Mcgraw Hill Higher Education
Prolog Programming: A Tutorial Introduction (artificial Intelligence Texts) Carlton Mcdonald and Masoud Yazdani 1990 Alfred Waller Ltd
An Introduction to Natural Language Processing Through Prolog Clive Matthews 20160701 Taylor & Francis
Hepburn: Further Programming In Prolog - Writing Application Programs (cloth) Philip Henry Hepburn 1987 Prentice Hall Europe (a Pearson Education Company)
Programming And Programming Languages: Prolog V. 2 (course M353) 1994 Open University Worldwide
A Quick Guide To An Introduction to Expert System Using PROLOG Alemu Kumilachew Tegegnie and Adane Nega Tarekegn 2015-06-29 LAP LAMBERT Academic Publishing
Techniques Of Prolog Programming: With Implementation Of Logical Negation And Quantified Goals Van Le, T. Wiley
Introduction To Programming In Prolog (prentice Hall International Series In Computer Science) Danny Crookes 1988 Prentice Hall
Techniques Of Prolog Programming With Implementation Of Logical Negation And Quantified Goals Software 1992 John Wiley & Sons Inc
The Techniques Of Prolog Programming With Implementation Of Logical Negation And Quantified Goals T. Van Le 1993 John Wiley And Sons Ltd
Logic Programming: Prolog And Stream Parallel Languages (prentice Hall Advances In Computer Science Series) J. D. Newmarch 1990 Prentice Hall

Publications about Prolog from Semantic Scholar

title authors year citations influentialCitations
Programming in Prolog W. Clocksin and C. Mellish 1987 1301 102
Prolog and Natural-Language Analysis F. Pereira and S. Shieber 1987 397 27
Prolog - the language and its implementation compared with Lisp D. Warren and L. Pereira and Fernando C Pereira 1977 157 6
High-performance logic programming with the Aquarius Prolog compiler P. V. Roy and A. Despain 1992 141 8
Partial evaluation as a means for inferencing data structures in an applicative language: a theory and implementation in the case of prolog J. Komorowski 1982 134 4
Logic Programming with Prolog M. Bramer 2005 116 30
If Prolog is the Answer, What is the Question? or What it Takes to Support AI Programming Paradigms D. Bobrow 1985 69 0
Tokio: Logic Programming Language Based on Temporal Logic and its Compilation to Prolog M. Fujita and S. Kono and Hidehiko Tanaka and T. Moto-Oka 1986 61 4
Reasoning about protein topology using the logic programming language PROLOG C. Rawlings and W. Taylor and J. Nyakairu and John Fox and M. Sternberg 1985 60 0
Systems programming in concurrent prolog E. Shapiro 1984 55 1
Prolog programming techniques P. Brna and A. Bundy and Tony Dodd and M. Eisenstadt and C. Looi and H. Pain and D. Robertson and Barbara M. Smith and M. Someren 1991 39 1
Prolog programming: applications for database systems, expert systems, and natural language systems C. Marcus 1986 15 0
Rapid prototyping of programming language semantics using Prolog B. Bryant and Aiqin Pan 1989 14 0
Programming in Modal Logic: An Extension of PROLOG based on Modal Logic Y. Sakakibara 1986 12 1
On implementing Prolog in functional programming M. Carlsson 1984 11 0
Natural language processing: a prolog perspective Christian Bitter and David A. Elizondo and Yingjie Yang 2010 6 0
Prolog As A First Programming Language Martin P. Lee and J. Pryce and A. Harrison 1970 6 0
Pitfalls in PROLOG programming K. Ng and W. Ma 1986 5 0
Prolog Programming and Applications W. D. Burnham and A. Hall and R. Bharath 1985 5 0
A plea for a readable Prolog programming style Robert McLaughlin 1990 4 0
Enhancing Prolog to Support Prolog Programming Environments A. Martelli and G. Rossi 1988 4 0
An adaptive prolog programming language with machine learning Benjie Lu and Zhiqing Liu and Hui Gao 2012 1 0
Design an Arm Robot through Prolog Programming Language A. Azad and T. Rashid 2013 1 0
assembly-language.html · prolog.html · bash.html

View source

- Build the next great programming language · Search · v2023 · Day 208 · Docs · Acknowledgements · Traffic · Traffic Today · Mirrors · GitHub · feedback@pldb.com