mapList/3
.
Predikát mapList(+Fun, +InputList, -OutputList)
předpokládá, že
je predikát arity
a
seznam. Výstupní
argument
je seznam stejné délky jako
, jehož
-tý člen
je získán voláním predikátu
s
-ním
argumentem
a
-tým argumentem
, kde
je
-tý člen
seznamu
. Definujme tedy predikát
mapList/3
následovně:
mapList(Fun,[IH|IT],[OH|OT]):- :-@ [Fun,IH,OH], mapList(Fun,IT,OT). mapList(_,[],[]).Jeho použití ilustruje následující jednoduchý příklad:
?- mapList(append("Surname: "),["Kowalski","Warren"],R). R = ["Surname: Kowalski","Surname: Warren"] Yes