=->/4
pro řetězené volání. Tento predikát odpovídá skládání
funkcí, jak jej známe z funkcionálního programování. Protože v našem
implementačním jazyce nepracujeme s funkcemi, ale
s predikáty, stanovme úmluvou, že funkční hodnota bude vydávána
v posledním argumentu.
=->/4
je definován jako infixní operátor s pravou asociativitou a lze
jej použít nejen společně s výše zavedenými predikáty vyššího řádu,
ale rovněž s kterýmikoli jinými predikáty vyhovujícími úmluvě:
=->(P1,P2,I,O):- :-@ [P2,I,Ot], :-@ [P1,Ot,O].Nejdříve je zavolán cíl . Jeho poslední argument, jenž obsahuje výsledek, je připojen k argumentům termu . Výsledek volání takto vzniklého cíle je konečně předán na výstup -- je to výsledek zřetězeného volání predikátů a .