Monday, June 11, 2007

Een klein prolog-programma'tje

Sorry voor de niet-burgies, jullie gaan hier niet zo veel aan hebben... Als je toch probeert het te lezen, als er een resultaat gegeven wordt gevolgd door No wil dit niet zeggen dat het resultaat niet geldig is, maar dat er geen andere resultaten zijn.

% Recente vetes van de week
vete(microsoft).
vete(prolog).
vete(delijn).

% Goede BeTheB'ers
betheb(ben).
betheb(jij).

% Absolute eikels
eikel(paus).
eikel(gargamel).

% BeTheB'ers haten de onderwerpen van de vete van de week.
% Eikels haten deftige BeTheB'ers.
haat(Persoon,Iets) :-
(
vete(Iets),
betheb(Persoon)
;
eikel(Persoon),
betheb(Iets)
).

% BeTheB'ers houden van mekaar, en we houden niet van onszelf (althans, dat gooien we niet zomaar in het openbaar).
houdtvan(A,B) :-
betheb(A),
betheb(B),
A \== B.

?- [problog].

?- haat(ben,prolog).
Yes

?- haat(ben, X).
X = microsoft;
X = prolog;
X = delijn;
No

?- haat(X, ben).
X = paus;
X = gargamel;
No

?- houdtvan(ben, X).
X = jij;
No

?- haat(jij,ben).
No

?- houdtvan(X, Y).
X = ben,
Y = jij;

X = jij,
Y = ben;
No

?- eikel(jij).
No

3 comments:

Koen said...

ge hebt echt een lief nodig bb

Sofie said...

Wat heeft iedereen toch tegen Gargamel? Ik vind dat een sympathieke kerel.

Anonymous said...
This comment has been removed by a blog administrator.