Thats a chicken egg question, given that Prolog comes
from parsing, and the work by Alain Colmerauer had in
his background first van Wijngaarden Grammars, and
then Q-Systems. The step to Prolog came in 1972,
while Pratt published his paper in POPL 1973. Sounds
la little queer to say it would be a fit for Prolog.
Although the Pratt paper also starts with reference
to Wijngaarden, and even Wirth. There was a generation
of researches struggling with language efforts such
as ALGOL and to give it lean parsers. The only trick
you need to know is how to eliminate left recursion
from your parser. So while a production rule on paper
might say in BNF, BNF itself advocated by Pratt:
<expr> ::= <expr> + <term>
<expr> ::= <term>
A Prologer will automatically think DCG and transform it:
expr(Y) --> term(X), expr_rest(X, Y).
expr_rest(X, T) --> "+", !, term(Y), expr_rest(X+Y, T).
expr_rest(X ,X) --> [].
The above shows the neat little trick to eliminate
the left recursion. Based on these ideas you can write
a full Prolog parser using an operator table. Its a little
bit like replacing foldl/4 by foldr/4 with an accumulator.
BTW: The difference lists underlying DCG in a 1972 document:
http://alain.colmerauer.free.fr/alcol/ArchivesPublications/HommeMachineFr/HoMa.pdf