Процедурные функции


CLIPS предоставляет 9 функций, которые реализуют возможности проце­дурного программирования, присущие таким стандартным языкам про­граммирования, как Basic, Pascal, С, Ada. Использование этих функций по­зволят создавать отрезки процедурного кода в правилах и функциях, соз­данных с помощью конструктора deffunction. Краткое описание этих функций приведено в табл. 15.12.


Таблица 15.12. Процедурные функции

Функция Описание
bind Создание и связывание переменных
if Оператор ветвления
while Цикл с предусловием
loop-for-count Итеративный цикл
progn Объединение нескольких действий в рамках одной логической команды
prong$ Выполнение заданного набора действий над каждым элементом составного поля
return Прерывание функции, цикла, правила, обработчика сообщения и т. д.
break Прерывание текущей работы циклов, функций progn и progn$ и некоторых функций, выполняющих действия над набором объектов без возвращения параметров
switch Оператор множественного ветвления

Если необходимо создание переменной или изменение значения уже существующей переменной, например в правой части правила, используется функцияbind.

Определение 15.53. Функция bind

(bind <имя-переменной> <выражение>*)

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

Если параметр <выражение> не определен, то выполнение функции bind не оказывает на локальные переменные никакого влияния, а глобальные пере­менные получают при этом значения по умолчанию. В случае если поль­зователь задал выражение, то его значение вычисляется и присваивается соответствующей переменной. Если задано несколько выражений, из их значений формируется составное поле, которое потом и будет связано с указанной переменной.

Функция bind возвращает значение false при неудачном исходе операции. Во всех остальных случаях функция возвращает присвоенное переменной значение. Ниже приведено несколько примеров использования функции bind (см. также рис. 15.17 и 15.18).



Дата добавления: 2021-12-14; просмотров: 308;


Поиск по сайту:

Воспользовавшись поиском можно найти нужную информацию на сайте.

Поделитесь с друзьями:

Считаете данную информацию полезной, тогда расскажите друзьям в соц. сетях.
Poznayka.org - Познайка.Орг - 2016-2024 год. Материал предоставляется для ознакомительных и учебных целей.
Генерация страницы за: 0.009 сек.