В Prolog разделяют списки на голову и хвост для организации рекурсивной обработки списков. 4
Голова списка — это первый элемент, который является отдельным неделимым значением. 1 Хвост же представляет собой список, составленный из того, что осталось от исходного списка после отделения головы. 1 Если хвост не пуст, его также можно разбить на голову и хвост. 4 И так до тех пор, пока не будет достигнут пустой список, у которого нет головы. 4
Разделение на голову и хвост позволяет отделять первый элемент и обрабатывать его отдельно, что работает вне зависимости от длины списка. 1
Операция деления списка на голову и хвост обозначается в Prolog с помощью вертикальной черты (|). 1