Пример 16.1. Использование команды save

(clear)

(deffunction example-1 ()

(printout t "Function example 1 without parameters" crlf)
)

(deffunction example-2 (?a)

(printout t "Function example 2 with 1 parameter" crlf)

(printout t "Parameter = "?a crlf)

)

(deffunction example-3 (?a?b)

(printout t "Function example 3 with 2 parameters" crlf)

(printout t "Parameter 1 = "?a crlf)

(printout t "Parameter 2 = "?b crlf)

)

(save "example-22.CLP")

После выполнения описанных выше действий откройте полученный файл example.CLP (например, с помощью программы Notepad (Блокнот) опера­ционной системы Windows). Полученный файл имеет содержание, пред­ставленное в примере 16.2.

Пример 16.2. Результат применения команды save

(deffunction MAIN::example-l ())

(deffunction MAIN::example-2 (?p0))

(deffunction MAIN::example-3 (?p0?pl))

(deffunction MAIN::example-1

()

(printout t "Function example 1 without parameters" crlf))

(deffunction MAIN::example-2

(?a)

(printout t "Function example 2 with 1 parameter" crlf)

(printout t "Parameter = "?a crlf))

(deffunction MAIN::example-3

(?a?b)

(printout t "Function example 3 with 2 parameters" crlf)

(printout t "Parameter 1 = "?a crlf)

(printout t "Parameter 2 = "?b crlf))

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

В случае успешного выполнения команда save возвращает значение true, в противном случае — false.

Кроме команд save и load, позволяющих сохранять и загружать конструкто­ры из текстовых файлов, CLIPS предоставляет аналогичные функции bsave и bload, использующие бинарные файлы. Формат этих функций приведен ниже.

Определение 16.3. Команды bsave и bload

(bsave <имя-файла>) (bload <имя-файла>)


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



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