Listen

Wichtigste nicht-nummerische Datenstrukturen in Prolog. Beliebig lang, besitzen aber eine feste Elementenreihenfolge. Gekennzeichnet im Programmcode durch eckige Klammern ( [ ] ). Die Klammerschreibweise ist nur eine Hilfsnotation, prologintern sind Listen rekursive Terme.

Wichtige Eigenschaften: Sie nehmen nur eine Argumentsstelle ein, ein Listenelement kann mehrmals vorhanden sein. Sie können auch keine Elemente enthalten (Leere Liste). Listen können selbst Elemente von Listen sein.

Listenelemente werden durch Kommata abgetrennt, der Listenreststrich ( | ) bezeichnet Listenreste beliebiger Länge, meist durch Variablen repräsentiert.

Unifizierbar sind zwei Listen paarweise, sowie wenn (falls nötig) ein Listenteil darüber hinaus mit der Variable nach dem Listenreststrich instantiiert werden kann.