Prolog
Παρουσιάσεις
- Εισαγωγή στη γλώσσα Prolog - Παπασπύρου Ν., Σαγώνας Κ.
- Περισσότερη Prolog - Παπασπύρου Ν., Σαγώνας Κ.
Συγγράμματα
- Τεχνικές Λογικού Προγραμματισμού - Η γλώσσα Prolog - Η. Σακελλαρίου, Ν. Βασιλειάδης, Π. Κεφαλάς, Δ. Σταμάτης, 2015
- Κεφάλαιο 4. Σύνταξη Prolog Προγραμμάτων
- Κεφάλαιο 5. Σημασιολογία Prolog Προγραμμάτων
- Λογικός Προγραμματισμός - Η γλώσσα Prolog - Χ. Νομικός, 2015
- Η γλώσσα προγραμματισμού Prolog - μέθοδος ταχείας εκμάθησης βάσει παραδειγμάτων - Κ. Σγάρμπας , 2006
- The First 10 Prolog Programming Contests
Tutorials
- Learn X in Y minutes where X=prolog
- Prolog tutorial by J.R.Fisher
- The power of Prolog by Markus Triska
- Learn Prolog Now
- Chapter 1 kb1.pl
- Chapter 1 kb2.pl
- Chapter 1 kb3.pl
- Chapter 1 kb4.pl
- Chapter 1 kb5.pl
- Chapter 2 kb1.pl
- Chapter 2 kb2.pl
- Chapter 2 kb3.pl
- Chapter 2 kb4.pl
- Chapter 3 eating.pl
- Chapter 3 descend.pl
- Chapter 3 descend1.pl
- Chapter 3 descend2.pl
- Chapter 3 descend3.pl
- Chapter 3 descend4.pl
- Chapter 3 successor.pl
- Chapter 3 add.pl
- Chapter 3 matryoshka.pl
- Chapter 4 member.pl
- Chapter 4 a2b.pl
- Chapter 5 addThreeAndDouble.pl
- Chapter 5 len1.pl
- Chapter 5 accLen.pl
- Chapter 5 accMax.pl
- Chapter 10 kb1.pl
- Chapter 10 kb2.pl
- Chapter 10 kb3.pl
- Chapter 10 kb4.pl
- Chapter 10 kb5.pl
- Drawing Prolog Search Trees: A Manual for Teachers and Students of Logic Programming
- Prolog dictionary
Βίντεο μαθήματα για την Prolog
- Εργαστήριο Prolog, Κ. Σγάρμπας
- Prolog tutorial by Derek Banas
- The Power of Prolog by Markus Triska: Videos
Λογισμικά
Διάφορα
Έναρξη SWI-Prolog διερμηνευτή από τη γραμμή εντολών
> swipl
Welcome to SWI-Prolog (threaded, 64 bits, version 8.2.4)
SWI-Prolog comes with ABSOLUTELY NO WARRANTY. This is free software.
Please run ?- license. for legal details.
For online help and background, visit https://www.swi-prolog.org
For built-in help, use ?- help(Topic). or ?- apropos(Word).
1 ?-
Εμφάνιση αποτελεσμάτων
?- print('hello world').
'hello world'
true.
?- writeln('hello world').
'hello world'
true.
?- X = 1, Y = 2, Z is X + Y, W = arta, format('X=~w Y=~w Z=~w W=~s', [X,Y,Z,W]), fail. % στη SWI-Prolog
X=1 Y=2 Z=3 W=arta
false.
Έξοδος από κατάσταση λάθους
Ctrl + C και μετά a για abort
Ενεργοποίηση και απενεργοποίηση ιχνηλάτησης
trace.
[trace] ?-
...
nodebug.
?-
Έναρξη SWI-Prolog διερμηνευτή από τη γραμμή εντολών και φόρτωση αρχείου κώδικα prolog
Έστω ότι ο κώδικας prolog βρίσκεται σε ένα αρχείο demo.pl
.
Α΄ τρόπος (με όρισμα στη γραμμή εντολών)
$ swipl -l demo.pl
Β’ τρόπος (με την εντολή consult)
$ swipl
1 ?- consult("demo.pl").
true.
% ή
2 ?- consult(demo).
true.
Γ’ τρόπος (με τη συντόμευση [])
$ swipl
1 ?- ["demo.pl"].
true.
% ή
1 ?- [demo].
true.
Βιβλιοθήκες της SWI-Prolog
- https://www.swi-prolog.org/pldoc/man?section=libpl
Εγκατάσταση της GNU-Prolog σε Ubuntu
$ sudo apt-get update
$ sudo apt-get upgrade
$ sudo apt-get gprolog
$ gprolog
GNU Prolog 1.4.5 (64 bits)
Compiled Feb 5 2017, 10:30:08 with gcc
By Daniel Diaz
Copyright (C) 1999-2016 Daniel Diaz
| ?- print('hello world').
hello world
yes
| ?- halt.