ご無沙汰しています。
下記のようにサンプルを参考にPyLogモジュールを使用したスクリプトを書きま
した。意図どおりに動くのですが、入れ子になっている二つのforループの挙動
の違いがよくわかりません。解説お願いできますでしょうか。
http://christophe.delord.free.fr/en/pylog/prolog.html
from pylog import *
exec(compile(r"""
alias('コルメラワー', 'Alain Colmerauer').
creator('Alain Colmerauer', 'Prolog').
creator(X, Z) :-
alias(X, Y),
creator(Y, Z).
"""))
queries = [
creator('Alain Colmerauer', 'Prolog'),
creator('コルメラワー', 'Prolog'),
creator('コワルスキー', 'Prolog'),
]
for query in queries:
print "?- %s." % query
n=0
for _ in query():
print "\tyes: %s." % query
n += 1
if n==0:
print "\tno"
藤岡 和夫
FGALTS@...
kazuf@...
TS Networkのために http://homepage1.nifty.com/kazuf/