次のチュートリアル: http://www.csupomona.edu/~jrfisher/www/prolog_tutorial/7_3.html
次の部分があります。
test_parser :- repeat,
write('?? '),
read_line(X),
( c(F,X,[]) | q(F,X,[]) ),
nl, write(X), nl, write(F), nl, fail.
c(F,X,[]) と q(F,X,[]) の部分については、私が見たものと一致しないように見えるため、非常に混乱しています。これらのパラメーターは q には意味がないようです。ここで何が起こっているのかを理解するのを手伝ってください。