SWI-Prolog Did You Know Did you know? SWI-Prolog provides general DCG primitives Search Documentation:
Predicate prepare_goal/3