Пример 5.7. Использование конструктора deffacts

(deffacts startup "Refrigerator Status"

(refrigerator light on)

(refrigerator door open)

(refrigerator temp (+ 5 10 15))

Обратите внимание, что третий факт содержит выражение, в данном при­мере сумму трех констант, но в качестве выражения, инициализирующего значение факта, могут использоваться и более сложные выражения, напри­мер, вызовы функций CLIPS или функций, определенных пользователем.]

Проверить работу конструктора deffacts можно воспользовавшись диалогом Watch Options. Для этого выберите пункт Watch меню Execution или исполь­зуйте комбинацию клавиш <Ctrl>+<W>. В диалоговом окне Watch Options включите режим просмотра изменения списка фактов, поставив галочку в поле Facts, как показано на рис. 5.7.

Рис. 5.7. Диалоговое окно Watch Options

После этого нажмите кнопку ОК и введите в CKIOS приведенный выше конструктор deffacts. Затем в меню Execution выберите пункт Reset (ком­бинация клавиш <Ctrl>+<E>). Если пример был набран правильно, то на экране должны появиться сообщения, аналогичные приведенным на рис. 5.8.

Рис. 5.8. Просмотр процесса добавления файлов

Так же, как и для конструкторов deftemplate, CLIPS предоставляет визуаль­ный инструмент для манипуляции с определенными в данный момент в системе конструкторами deffacts -- Deffacts Manager (Менеджер пред­определенных фактов). Для запуска Deffacts Manager в меню Browse выбе­рите пункт Deffacts Manager. Внешний вид менеджера приведен на рис. 5.9.

Рис. 5.9. Окно менеджера предопределенных фактов

Менеджер отображает все введенные на текущий момент в систему конст­рукторы deffacts. В нашем случае это initial-fact, речь о котором пойдет ниже, и только что добавленный нами startup. Менеджер позволяет выво­дить в основное окно CLIPS информацию об определениях существующих в данный момент в системе конструкторов deffacts с помощью кнопки Pprint (кроме deffacts initial-fact) и удалять любой существующий конструктор. Пример вывода информации об определении конструктора deffacts startup приведен на рис. 5.10. Обратите внимание, что комментарии, введенные после имени конструктора, сохраняются и выводятся на экран так же, как в конструктореdeftemplate.

Рис. 5.10. Получение информации об определенном конструкторе

Во время запуска и после выполнения команды clear CLIPS автоматически конструирует следующие предопределенные шаблоны и факты:


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: