funkcionální programování
Prolog lze psát ve VS Code
kvantifikátory se explicitně nepíšou
muz(sokrates).
… je Sokrates muž?
stisknutím středníku (u složeného výrazu) vynutíme selhání – Prolog zkouší další možnosti
manzele(X,Y) :- manzele(Y,X).
není správný přístup, způsobí to nekonečný cyklus
manzele(jina, karel_iv).
(kde jina
neexistuje) nikdy nedoběhnepracujeme s termy
unifikace
datum(D1, M1, 2024) = datum(D2, unor, R2).
je…\=
vrátí true, pokud termy nelze unifikovatrekurze
predek(X,Y) :- rodic(X,Y).
predek(X,Z) :- rodic(X,Y), predek(Y,Z).
% predek(+Predek, ?Potomek)
+-
označuje, že argument může obsahovat volné proměnnéprogramování s omezujícími podmínkami
use_module(library(clpfd)).
#
predikáty vyšších řádů
řez
negace
funkcionální fronta
:load soubor.hs
načte soubor
:l
:r
(reload) se soubor znova načte