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

Содержимое удалено Содержимое добавлено
Строка 806:
=== Реализация действий ===
 
Синтаксически, библиотека разработанная в Java должна расширятрасширять базовый класс ''alice.tuprolog.Library,'' и определять новые предикаты и/или поддающиеся оценке функторы и/или директивы в форме методов, соответсвующие простому подписанию условных обозначений (signature convention).В общем, новые предикаты должны удовлетворять этимследующим правилам обозначениямописания:
<pre>
 
public boolean <pred name > <N >(T1 arg1, T2 arg2, ...,Tn argN)
</pre>
 
в то время как доступные функторы - форме:
<pre>
 
public Term <eval funct name > <N >(T1 arg1, T2 arg2, ...,Tn argN)
</pre>
 
Директивы должны удовлетворять следующим правилам описания:
и диреткивы тоже:
<pre>
 
public void <dir name > <N >(T1 arg1, T2 arg2, ..., Tn argN)
</pre>
 
где T1, T2, ... Tn термины или одельные классы, такие как Struct, Var, Long, и т.д., определенные в tuProlog, и соответсвующие аналогам Java соответсвующих типов данных Prolog.
 
где T1, T2, ... Tn термины или одельные классы, такие как Struct, Var, Long, и т.д., определенные в tuProlog, соответсвующие аналогам Java соответсвующих типов данных Prolog.
 
Параметры представляют аргументы переданные встроенным предикатам, функторам или директивам.
 
Библиотека определяет также, новые данные теории, которые собраннысобраны движком Prolog , хотя вызов библиотечного метода String getTheory().
 
По умолчанию, этот метод возвращает пустую теорию: библиотеки к которым необходимо добавить теорию Prolog должны отвергать это соответственно.
Строка 830 ⟶ 829 :
 
Однако, используя Java String для обработки кода библиотек Prolog гарантирует автономность при загрузке библиотек через удаленные устройства, такие как RMI.
 
 
=== Имя библиотеки ===