From Newsgroup: comp.lang.prolog
Finished Prolog Interpreter! yehhhh ... could be some tweaks
as i get more advanced programs in Prolog
will go LIVE soon few cosmetic changes
Now it DISPLAYS the path at the end
go FROM TO TO
:-
rd FROM TO
go FROM TO [ p FROM PTH ]
:-
rd FROM MID
go MID TO PTH
query :- go 1 7 PATH
-----------
---------- BEGIN 2 ---------
go 1 7 PATH
F = 1
T = 7
PATH = P
RULE 1
FROM = 1
TO = 7
-----------
go FROM TO TO :- rd FROM TO
-----------
---------- BEGIN 4 ---------
rd FROM TO
FROM = 1
TO = 7
NOT FOUND
****** 3 ******
F = 1 T = 7 PATH = P FROM = 1 TO = 7
****************
RULE 2
FROM = 1
TO = 7
P = [ p FROM PTH ]
-----------
go FROM TO [ p FROM PTH ] :- rd FROM MID go MID TO PTH
-----------
---------- BEGIN 6 ---------
rd FROM MID
FROM = 1
MID = 3
---------- BEGIN 7 ---------
go MID TO PTH
MID = 3
TO = 7
F = 3
T = 7
PTH = FROM-->1
PTH-->PTH
[ p 1 PTH ]
RULE 1
FROM = 3
TO = 7
-----------
go FROM TO TO :- rd FROM TO
-----------
---------- BEGIN 9 ---------
rd FROM TO
FROM = 3
TO = 7
NOT FOUND
****** 8 ******
F = 3 T = 7 PTH = [ p 1 PTH ] FROM = 3 TO = 7
****************
RULE 2
FROM = 3
TO = 7
P = [ p FROM PTH ]
-----------
go FROM TO [ p FROM PTH ] :- rd FROM MID go MID TO PTH
-----------
---------- BEGIN 11 ---------
rd FROM MID
FROM = 3
MID = 5
---------- BEGIN 12 ---------
go MID TO PTH
MID = 5
TO = 7
PTH = [ p 1 PTH ]
F = 5
T = 7
P = [ p 1 PTH ]
RULE 1
FROM = 5
TO = 7
-----------
go FROM TO TO :- rd FROM TO
-----------
---------- BEGIN 14 ---------
rd FROM TO
FROM = 5
TO = 7
****** 13 ******
F = 5 T = 7 P = [ p 1 PTH ] FROM = 5 TO = 7
****************
****** 10 ******
F = 3 T = 7 PTH = [ p 1 PTH ] FROM = 3 TO = 7 P = [ p FROM PTH ] ****************
****** 5 ******
F = 1 T = 7 PATH = P FROM = 1 TO = 7 P = [ p FROM PTH ]
****************
YES
PATH = [ p 5 [ p 1 PTH ] ]
--- Synchronet 3.20a-Linux NewsLink 1.114