Visual Prolog
From Wikipedia, the free encyclopedia
Visual Prolog, also formerly known as PDC Prolog and Turbo Prolog, is a strongly typed object-oriented extension of Prolog. As Turbo Prolog it was marketed by Borland, but it is now developed and marketed by the Danish firm Prolog Development Center (PDC) that originally produced it.
Visual Prolog is compiled rather than interpreted, as is traditional for logic languages.
The core of Visual Prolog are Horn clauses like in Prolog, but unlike Prolog, Visual Prolog has always been strongly and statically typed. Since version 6.0 the language has been fully object-oriented, and in version 7.0 parametric polymorphism was introduced.
[edit] Hanoi Example
class hanoi predicates hanoi : (unsigned N). end class hanoi implement hanoi domains pole = string. clauses hanoi(N) :- move(N, "left", "centre", "right"). class predicates move : (unsigned N, pole A, pole B, pole C). clauses move(0, _, _, _) :- !. move(N, A, B, C) :- move(N-1, A, C, B), stdio::writef("move a disc from % pole to the % pole\n", A, B), move(N-1, C, B, A). end implement hanoi goal console::init(), hanoi::hanoi(4).
[edit] External links
[edit] See also
Preceding: | Prolog |
Subsequent: | none |