Управление интерактивной средой
Последняя версия CLIPS содержит 19 команд, предназначенных для управления интерактивной средой. Краткое описание этих команд приведено в табл. 16.1.
Таблица 16.1. Команды работы со средой
Команда | Описание |
load | Загрузка конструкторов из текстового файла |
load* | Загрузка конструкторов из текстового файла без отображения процесса загрузки в диалоговом окне CLIPS |
save | Сохранение созданных конструкторов, в текстовый файл |
bload | Загрузка конструкторов из двоичного файла |
bsave | Сохранение созданных конструкторов, в двоичный файл |
clear | Очистка рабочей памяти системы |
exit | Выход из CLIPS |
reset | Сброс рабочей памяти системы |
batch | Запуск командного файла |
batch* | Запуск командного файла без отображения процесса выполнения в диалоговом окне CLIPS |
options | Вывод в диалоговое окно информации обо всех текущих установках системы |
system | Выполнение команды операционной системы |
set-auto-float-dividend | Установка режима автоматического преобразования типа чисел при делении |
get-auto-float-dividend | Проверка текущего состояния режима автоматического преобразования типов чисел при делении |
set-dynamic-constraint-checking | Установка режима динамической проверки ограничений |
get-dynamic-constraint-checking | Проверка текущего состояния режима динамической проверки ограничений |
set-static-constraint-checking | Установка режима статической проверки ограничений |
get-static-constraint-checking | Проверка текущего состояния режима статической проверки ограничений |
apropos | Поиск любых элементов языка, введенных в рабочую память и содержащих заданную подстроку |
Команды load и load* предназначены для загрузки конструкторов из текстового файла. Загружаемый текстовый файл можно создать в любом текстовом редакторе, самом CLIPS или с помощью команды save. Обе команды имеют схожий формат, приведенный ниже.
Определение 16.1. Команды load и load*
(load <имя-файла>) (load* <имя-файла>)
Команда load, в отличие от load*, выводит в диалоговое окно CLIPS информацию о процессе загрузки файла. Если включен режим отображения изменения наборов того или иного элемента, CLIPS выводит в диалоговое окно соответствующее сообщение при выполнении каждого конструктора. Если в процессе загрузки в текстовом файле встретится ошибочное определение конструктора, CLIPS выведет соответствующее сообщение об ошибке и продолжит чтение файла. При успешном выполнении обе команды возвращают значение true, в противном случае — false.
Команда save создает текстовый файл и записывает в него все определенные в системе на данный момент конструкторы.
(save <имя-файла>)
Важной особенностью команды save является то, что при сохранении конструкторов deffunction и defmethod в текстовом файле автоматически генерируются предварительные определения функций и методов родовых функций. Это необходимо для избежания циклических ссылок, возможных при рекурсивных вызовах. Для демонстрации такой ситуации выполните действия, представленные в примере 16.1.
Дата добавления: 2021-12-14; просмотров: 254;