PrologでまったりPart 2
■ このスレッドは過去ログ倉庫に格納されています
0238デフォルトの名無しさん
2005/07/18(月) 22:49:34終始しているといえます。手続き的な要素は
member/2とfindall/3,repeat/0,for/3とfail,true,not/1,でほとんど
構成され、append/3,reverse/2,sort/2のような述語でさえ、めったに
使うことはありません。代表的なパターンは
1・・データベース述語の参照からfailに至るバックトラックパターン
2・・findallで一旦データベース述語をリストに構成して再帰述語に
渡すパターン(データベースではなくstreamであることもあります)
3・・memberでリストの要素を取り出し、failでバックトラックするパターン
この3パターンの組み合わせだけでほとんどの述語(質問)は構成されます。
もちろんC言語などと同様文字列述語なども頻繁に使用されますが、
上記のパターンの中にフィルターとして現れるということになります。
■ このスレッドは過去ログ倉庫に格納されています