EXEMPLES:

 

Vous trouverez dans cet espace plusieurs exemples d'utilisation de l'interpréteur et du compilateur via une session complète sous sictus prolog dans laquelle nous souhaitons definir la fonction factorielle.

| ?- define(fact,[N],if(N=0,1,N*apply(fact,[N-1]))).%definition
true ?
yes


| ?- listing(fun/3).%verification
fun(fact, [A], if(A=0,1,A*apply(fact,[A-1]))).

yes


| ?- eval(apply(fact,[6]),L).%interprète fact avec 6 comme arg
L = 720 ?
yes


| ?- compilo(fact).%on compile fact
yes


| ?- listing(fact/2).%on verifie qu'il est chargé
fact([A], B) :-
C=A,
D=0,
( C=D ->
E=true
; E=false
),
E=false,
F=A,
G=A,
H=1,
I is G-H,
J=[],
fact([I|J], K),
B is F*K.
fact([A], B) :-
C=A,
D=0,
( C=D ->
E=true
; E=false
),
E=true,
B=1.

yes

| ?- fact([6],L). %on execute le code compilé.
L = 720 ?
yes