SWI-Prolog имеет библиотеку dcgbasics для использования с DCG .
при обращении к модулю use_module / 1 , например
:- use_module(library(dcg/basics)).
, просто попытаться использовать listing / 1 с ним не так просто.
?- listing(dcg:_).
true.
?- listing(dcgbasics:_).
true.
?- basics:listing.
true.
Как правильно получить список пунктов в library(dcg/basics)
?
Продолжение после ответа.
Чтобы вывести конкретный пункт, например, blanks//0
запрос
?- listing(dcg_basics:blanks).
blanks(A, B) :-
blank(A, C),
!,
D=C,
blanks(D, B).
blanks(A, A).
true.