cc4531cd1e
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@53 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
53 lines
537 B
Plaintext
53 lines
537 B
Plaintext
|
|
:- object(joePerson).
|
|
|
|
|
|
:- public(growOld/0).
|
|
|
|
:- public(address/1).
|
|
|
|
:- public(age/1).
|
|
:- dynamic(age/1).
|
|
|
|
:- public(name/1).
|
|
|
|
:- public(phone/1).
|
|
|
|
:- public(counter/1).
|
|
:- dynamic(counter/1).
|
|
|
|
:- public(incCounter/0).
|
|
|
|
|
|
growOld :-
|
|
retract(age(Old)),
|
|
New is Old + 1,
|
|
asserta(age(New)).
|
|
|
|
|
|
address('8 Octave Street').
|
|
|
|
|
|
age(30).
|
|
|
|
|
|
name('John').
|
|
|
|
|
|
phone(11-11-11-11).
|
|
|
|
|
|
counter(0).
|
|
|
|
|
|
incCounter :-
|
|
(::retract(counter(Old)) ->
|
|
true
|
|
;
|
|
Old = 0),
|
|
New is Old + 1,
|
|
::asserta(counter(New)).
|
|
|
|
|
|
:- end_object.
|