Логическое программирование на языке Visual Prolog. Солдатова О.П - 31 стр.

UptoLike

31
Голова списка всегда имеет тип элемента списка, хвост списка
тип списка!
Head здесь является переменной для обозначения головы списка,
переменная Tail обозначает хвост списка (для имен головы и хвоста списка
пригодны любые допустимые Прологом имена).
Данная операция также присоединяет элемент в начало списка,
например, для того, чтобы присоединить X к списку S следует
написать
[X|S].
В концептуальном плане, список имеет структуру дерева, как и другие
составные термы. Так, например, список [a,b,c] можно представить в виде
структуры:
Отличительной особенностью описания списков является наличие
звездочки (*) после имени домена элементов.
Пример 24: объявление списков, состоящих из элементов
стандартных типов доменов или типа структуры.
domains
list1=integer*
list2=char*
list3=string*
list4=real*
list5=symbol*
personal_library = book (title, author, publisher, year)
list6= personal_library*
list7=list1*
list8=list5*
В первых пяти объявлениях списков в качестве элементов
используются стандартные домены данных, в шестом типе списка в
качестве элемента используется домен структуры personal_library, в
седьмом и восьмом типе списка в качестве элемента используется ранее
объявленный список.
список
a список
b список
c []