This repository has been archived on 2023-08-20. You can view files and clone it, but cannot push or open issues or pull requests.
yap-6.3/Logtalk/examples/viewpoints/joePerson.lgt
2001-06-06 19:40:57 +00:00

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.