18/08/04 11:13:45.64 dITWU8BY.net
関数の戻り値を考える習性がついているのがProglogの理解を妨げているな、void main(agrc,char *argv[])とか。
引数に合致する要素をProglogが探し出してくれるから
palindrome(X) :- reverse(X,X).ですむし、
左シフトがshift(List,X).なら右シフトはshift(X,List).ですむ。
連結述語で削除できたり、削除述語で挿入できたりする。
強いていえば述語は陰関数だな。