PrologのDCG表記を使用して、大文字で始まるシーケンスを変数に解析するのに問題があります。たとえば、私が文字列を持っている場合
f a X y Z X
そして、この文字列を解析するDCGは、大文字の各文字を一意のProlog変数に解析する方法があります。たとえば、変数に解析Y
し、それぞれX
を変数に解析しますか?意図されたアプリケーションは、ファンクターを構築することです
T = f(a,X,y,Z,X)
ステートメントで終わるDCGルールを介して
{T =.. [Head|Args]}