- •Краткое описание языка.
- •Цель этого описания состоит в том, чтобы объяснить вам удобство работы с
- •Новые Особенности
- •Интерфейс ms-Office
- •Привет Пролог
- •Краткий обзор
- •Использование Класса Java
- •Установка логического сервера
- •Запрос Пролога
- •Динамическая база данных
- •Преобразования следствия и терминов
- •Создание / получение типов Пролога
- •Структура управления
- •Управление параметрами для расширенных предикатов
- •Управления списками
- •Обработка ошибок
- •Компоненты Delphi
- •Краткий обзор
- •Использование Компонент
- •Осуществление расширенных предикатов
- •Типы логического сервера
- •Создание логического сервера
- •Расширенные Предикаты
- •Запросы Пролога
- •Динамическая база данных
- •Преобразования срок
- •Создание / получение Типов Пролога
- •Структуры управления
- •Списки управления
- •Ввод - вывод Пролога
- •Разные Функции
- •Осуществление Расширения Предикатов
- •Привет Пролог
- •Краткий обзор
- •Использование модуля
- •Осуществление расширения предикатов
- •Константы логического сервера
- •Логическая установка серверов
- •Расширение предикатов
- •Запрос Пролога
- •Динамическая база данных
- •Преобразования сроки
- •Создание / получение Типов Пролога
- •Структуры управления
- •Списки управления
- •Разные Функции
- •Заключение
Константы логического сервера
Они - простые константы, используемые логическим сервером. Они используются, для отображения значений типов данных в API.
' For unicode systems, set unicode to True
#Const unicode = False
' Last Error Message and Code
Global ErrorLS As String
Global ErrLS As Integer
' The current engine id
Dim EngineID As Long
' The type of error handling to perform,
' 0=message boxes, 1=generate errors
Dim ErrorMethod As Variant
' The maximum size of strings returned from Prolog
Dim MaxStrLen As Variant
' Prolog Types
Global Const pATOM = 0
Global Const pINT = 1
Global Const pSTR = 2
Global Const pFLOAT = 3
Global Const pSTRUCT = 4
Global Const pLIST = 5
Global Const pTERM = 6
Global Const pADDR = 7
Global Const pVAR = 8
Global Const pWSTR = 9
Global Const pWATOM = 10
' Basic Types
Global Const bATOM = 0
Global Const bSTR = 1
Global Const bINT = 2
Global Const bLONG = 3
Global Const bSHORT = 4
Global Const bFLOAT = 5
Global Const bDOUBLE = 6
Global Const bADDR = 7
Global Const bTERM = 8
Global Const bWSTR = 9
Global Const bWATOM = 10
Логическая установка серверов
Эти функции обеспечивают основные API услуги. Они используются, чтобы инициализировать и закрыть среду Пролога. Функция, main, предикатом загрузки файл Пролога.
Sub InitLS (ByVal INIFile As String)
Sub InitLSX ()
Sub AddLSX (ByVal LSXFile As String)
Sub AddPredLS(ByVal Predname As String, ByVal Arity As Integer, ByVal pfunc As Long)
Sub LoadLS (ByVal XPLFile As String)
Function MainLS () as Integer
Sub ResetLS ()
Sub CloseLS ()
Они основаны на функциях API lsInit, lsInitLSX, lsAddLSX, lsLoad, lsMain, lsReset, и lsClose.
Следующие функции управляют параметрами в пределах модуля VB. SetMaxStrLenLS устанавливает максимальную длину для всех строк, возвращенных от Пролога.
SetErrorHandlerLS выбирает, отображены ли сообщения об ошибках в окнах сообщения ("MessageBox") или сообщены через ошибку #31300 ("ErrorCode"). Когда ошибка сообщения, ErrorLS установлен в сообщение об ошибках, и ErrLS установлены ошибки в Amzi! логический сервера. Установившаяся правилам, функция которая исполняет эти операции называется ErrorHandle.
Sub SetMaxStrLenLS (ByVal num As Integer)
Sub SetErrorHandlerLS (ByVal ErrMethod As String)
Расширение предикатов
Когда вы пишете расширенные предикаты, вы можете непосредственно управлять параметрами Пролога для этой функции. Эти предикаты обеспечивают обслуживание. Полученная группа отыскивает n-ый параметр, который использовался в запросе, и группа объединяет некоторый вычисленный результат с n-ым параметром.
Модуль VB содержит множество тип - определенных дополнений к основному API. Функции типа GetLongParmLS и UnifyStrParmLS.
Sub GetParmLS(ByVal Param As Integer, ByVal BType As Integer, Ptr As Variant)
Function GetStrParmLS(ByVal Param As Integer) As String
Function GetIntParmLS(ByVal Param As Integer) As Integer
Function GetLongParmLS(ByVal Param As Integer) As Long
Function GetFloatParmLS(ByVal Param As Integer) As Single
Function GetParmTypeLS(ByVal Term As Long, ByVal ParmNum As Integer) As Integer
Function StrParmLenLS(ByVal ParmNum As Integer) As Integer
Function UnifyParmLS(ByVal Param As Integer, ByVal BType As Integer, ByVal Ptr As Variant) As Boolean
Function UnifyStrParmLS(ByVal Param As Integer, ByVal Str As String) As Boolean
Function UnifyAtomParmLS(ByVal Param As Integer, ByVal Str As String) As Boolean
Function UnifyIntParmLS(ByVal Param As Integer, ByVal IntVal As Integer) As Boolean
Function UnifyLongParmLS(ByVal Param As Integer, ByVal LongVal As Long) As Boolean
Function UnifyFloatParmLS(ByVal Param As Integer, ByVal FloatVal As Single) As Boolean
Эти функции основаны на функциях API lsGetParm, lsGetParmType, lsUnifyParm, и lsStrParmLen.