logo
TurboProlog / Документация / TOM_2

Термы (горючее для интерпретатора правил)

Прежде чем вы сможете понять теорию, лежащую в основе правил и их

интерпретации, вам следует познакомиться с термами языка Пролог. Термом

языка Пролог может быть:

- переменная

- число

- строка

- функтор и список аргументов (если аргументов нет, то он назы-

вается атомом или символом)

- список (функтор для списка - это оператор конкатенации, а

список аргументов состоит из двух элементов - головы и хвоста

списка)

В термах Пролога нет ничего таинственного; это просто способ предс-

тавления информации понятный для интерпретатора Пролога. Говоря другими

словами, термы Пролога - это элементы, создающие программу на Прологе.

Пролог использует термы не так, как Паскаль использует записи или Си -

структуры, потому что термы Пролога являются ссылающимися на себя, что

означает отсутствие ограничений на их содержание.

Терм языка Пролог может быть создан из других термов, а просто за-

конченная программа или база знаний могут содержаться в одном терме Про-

лога, сконструированном из множества других. Такие термы внутри-термов

(называемые подтермами) могут представлять предложения программы, а мо-

гут, в свою очередь, быть созданными из других термов.

Преимущество использования термов заключается в легкости разбиения

терма на составляющие его части и применения к ним соответствующей интер-

претации, особенно если это делается на языке Пролог.

Понятие и концепция термов не является неотъемлемой частью Пролога,

также как отвратительность не является неотъемлемой частью снеговика;

принцип может легко быть использован и в другом месте. В данном приложе-

нии свободно будем говориться о "терме Пролога", не предполагая никакой

связи с действительным кодом на Прологе.

В следующем разделе будет объяснено, как создать терм Пролога, а в

других разделах показано, как его интерпретировать.