Последняя версия 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.






