TuProlog: различия между версиями

Содержимое удалено Содержимое добавлено
Нет описания правки
Нет описания правки
Строка 421:
get prolog flag/2 не обратимо.
 
Операция выполняется согласно следующему правилу: get prolog flag(+flag, ?term)
 
==== Управление операциями и признаками ====
• op/3
op(Приоритет, Спецификатор, Оператор) истинно. Он всегда выполняется, изменяя таблицу операторов. Если приоритет равен 0, тогда оператор удаляется из таблицы операторов; иначе, Оператор добавляется к таблице операторов, с приоритетом (нижние связывают сильнее) Приоритет и ассоциативностью определяемой Спецификатором. Если оператор, с одинаковым символом Оператора и Спецификатора уже существует в таблице операторов, предикат модифицирует его приоритет в соответствии с аргументом Приоритета.
Операция выполняется согласно следующему правилу: op(+integer, +specifier, @atom or atom list)
• flag list/1
flag list(Список признаков) истинно, и Список признаков содержит признаки определяемые в ядре TuProlog.
Операция выполняется согласно следующему правилу: flag list(-list)
• set prolog flag/2
set prolog flag(Признак, Значение) истинно, и ассоциируется со значением признака, где значение находится в пределах допустимых значений (implementation defined range of values for Flag).
Операция выполняется согласно следующему правилу: set prolog flag(+flag, @nonvar)
• get prolog flag/2
get prolog flag(Признак, Значение) истинно, если Признак поддерживается TuProlog и Значение ассоциируется с ним. get prolog flag/2 не обратимо.
Операция выполняется согласно следующему правилу: get prolog flag(+flag, ?term)
 
Строка 440 ⟶ 426 :
 
• load library/1
 
load library(Имя Библиотеки) истинно, если Имя Библиотеки соответствует библиотеке tuProlog, которая доступна для загрузки.
Определенные библиотеки загружаются автоматически.
Имя Библиотеки, это имя класса Java предоставляющего библиотеку.
 
Операция выполняется согласно следующему правилу: load library(@string)
 
• unload library/1
 
unload library(Имя Библиотеки) истинно, если Имя Библиотеки соответствует библиотеке tuProlog, которая доступна для загрузки. Определенные библиотеки выгружаются автоматически. Имя Библиотеки, это имя класса Java предоставляющего библиотеку.
unload library(Имя Библиотеки) истинно, если Имя Библиотеки соответствует библиотеке tuProlog, которая доступна для выгрузки.
unload library(Имя Библиотеки) истинно, если Имя Библиотеки соответствует библиотеке tuProlog, которая доступна для загрузки. Определенные библиотеки выгружаются автоматически. Имя Библиотеки, это имя класса Java предоставляющего библиотеку.
 
Операция выполняется согласно следующему правилу: unload library(@string)
 
==== Директивы ====
 
Директивы используются в Prolog тольков каккачестве запросызапросов, моментальнонезамедлительно выполняющиеся при обращении к ним.
В случае если имеется утверждениепредикат с таким же процедурным именем, как существующая директива, они будут выполнять одинаковые действия.
Их аргументы будут удовлетворять одним и тем же ограничениям, таким как безошибочное выполнение соответствующего утверждения, в противном случае их поведение непредсказуемо.
 
В tuProlog, директивы не компонуемы: каждый запрос должен содержать одну и только одну директиву. Если возникает необходимость использования нескольких директив, необходимо использовать множественные запросы.
Если возникает необходимость использования нескольких директив, необходимо использовать множественные запросы.
 
В tuProlog, директивы не компонуемы: каждый запрос должен содержать одну и только одну директиву. Если возникает необходимость использования нескольких директив, необходимо использовать множественные запросы.
• :- op/3
 
op(Приоритет, Спецификатор, Оператор) добавляет оператор в таблицу операторов, с приоритетом (нижние связывают сильнее) Приоритет и ассоциативностью определяемой Спецификатором.
 
Операция выполняется согласно следующему правилу: op(+integer, +specifier, @atom or atom list)
 
• :- flag/4
 
flag(Имя признака, список допустимых значений (ValidValuesList), исходное значение (DefaultValue), возможность модификации (IsModifiable)) добавляет новый признак, определяемый Именем Признака, с допустимыми значениями указанными в списке с исходным значением.
 
Операция выполняется согласно следующему правилу: flag(@string, @list, @term, @true, false)
 
• :- initialization/1
 
initialization(Задача) устанавливает задачу, которая запускается сразу после проверки теории.
 
Операция выполняется согласно следующему правилу: initialization(@goal)
 
• :- solve/1
 
Синоним инициализации/1.
 
Операция выполняется согласно следующему правилу: solve(@goal)
 
• :- consult/1
 
consult(Имя файла) немедленно загружает теорию содержащуюся в указанном имени файлафайле.
 
Операция выполняется согласно следующему правилу: consult(@string)