Setwritemode/1 Графика
Назначение Устанавливает режим рисования линий
Обращение setwritemode(РисРежим)
Домены (integer)
Шаблоны описания (вх)
аргументов
Описание setwritemode описывает, как графические предикаты
будут рисовать линии на экране. Если РисРежим = 0,
то цвет рисуемых линий будет накладываться на
изображение на экране. Если РисРежим = 1, то цвет
рисуемых линий будет смешиваться с изображением на
экране.
GRAPDECL.PRO определяет две константы, которые вы
можете использовать для РисРежим:
-----------------------------------------------------
Имя Значение Описание
-----------------------------------------------------
COPY_PUT 0 цвет рисуемых линий будет
накладываться на изображение
на экране
XOR_PUT 1 цвет рисуемых линий будет
смешиваться с изображением
на экране
-----------------------------------------------------
shiftwindow/1
Назначение Переключает активное окно или возвращает номер
текущего окна
Обращение shiftwindow(НомОкна)
Домены (integer)
Шаблоны описания (вх) , (вых)
аргументов
Описание (вх)
Изменяет текущее окно с номером, определенным в
НомОкна. (Содержимое предыдущего активного окна и
позиция курсора в нем сохранились). Новое текущее
окно будет создано заново в том случае, когда оно
было стерто с момента его последней активизации.
(вых)
Связывает переменную НомОкна с номером текущего окна
Неудачное Никогда не дает.
завершение
Ошибки 1005 Ссылка на неизвестное окно.
Пример
goal
makewindow(1, 7, 7, " Окно 1 ", 0, 0, 25, 40),
makewindow(2, 7, 7, " Окно 2 ", 0, 40, 25, 40),
makewindow(3, 7, 7, " Окно 3 ", 0, 0, 12, 80),
makewindow(4, 7, 7, " Окно 4 ", 12, 0, 13, 80),
shiftwindow(1),
write("Это #1!\n\nНажмите любую клавишу"),
readchar(_),
shiftwindow(2),
write("Сейчас вы находитесь в окне #2.
\nЧто затем?\n\nНажмите любую клавишу."),
readchar(_),
shiftwindow(3),
write("Вот что затем; окно #3.
\nНажмите любую клавишу."),
readchar(_),
shiftwindow(4),
write("Сейчас мы можем записать в окно #4.\n
\nНажмите любую клавишу для продолжения."),
readchar(_),
shiftwindow(1),
write("\n\nЭто все !").
snowcheck/1
Назначение Управляет состоянием белого фона CGA
Обращение snowcheck(Status)
Домены (string)
Шаблоны описания (вх) , (вых)
аргументов
Описание snowcheck читает или устанавливает статус белого фона
на видео выходе для карты CGA.
snowcheck(on) Состояние белого фона вкл.
snowcheck(off) Состояние белого фона выкл.
snowcheck(Status) Возвратить состояние белого фона.
Неудачное Никогда не дает.
завершение
Ошибки Нет ошибок.
Пример
predicates
checksnow(STRING)
setsnow(CHAR)
testwrite(INTEGER)
clauses
checksnow(on):-!,
snowcheck(off),
testwrite(1000),
write("\nВы видите белый фон на вашем экране ?"),
readchar(ANS),
setsnow(ANS).
checksnow(off):-!,
testwrite(1000),
write("\nВы видите белый фон на вашем экране ?"),
readchar(ANS),
setsnow(ANS).
setsnow('y'):-snowcheck(on).
setsnow('Y'):-snowcheck(on).
setsnow(_).
testwrite(0):-!.
testwrite(N):-
makewindow(_,_,_,_,_,_,ROWS,COLS),
RR=ROWS-1, CC=COLS-1,
random(RR,X),random(CC,Y),
scr_char(X,Y,CH), scr_char(X,Y,CH),
N1=N-1,
testwrite(N1).
goal
snowcheck(OLDSTATUS),
write("\nСостояние вашего белого фона :",
OLDSTATUS),
checksnow(OLDSTATUS).
sound/2
Назначение Производит звуковой сигнал в динамике компьютера
Обращение sound(Продолжит,Част)
Домены (integer,integer)
Шаблоны описания (вх,вх)
аргументов
Описание sound воспроизводит через динамик звуковой сигнал
с частотой = Част , продолжительностью = Продолжит
сотых долей секунд.
Неудачное Никогда не дает.
завершение
Ошибки Нет ошибок.
Пример
predicates
tune(char)
clauses
tune('e') :- !, sound(100, 165).
tune('a') :- !, sound(100, 220).
tune('d') :- !, sound(100, 294).
tune('g') :- !, sound(100, 392).
tune('b') :- !, sound(100, 494).
tune('h') :- !, sound(100, 660).
tune(_) :-
clearwindow,
write("Эту ноту я не могу сыграть!\n\n",
"Нажмите любую клавишу для продолжения."),
readchar(_), clearwindow, fail.
goal
makewindow(1,7,7," МЕЛОДИЯ ГИТАРЫ ",0,0,25,80),
write("Эта программа поможет вам настроить вашу
гитару.\n\n"),
write("Пожалуйста, введите ноту, вы услышите
звук"," (e, a, d, g, b, or h for high e): "),
readchar(Tune),
upper_lower(Tune, Tune1),
tune(Tune1).
storage/3
Назначение Возвращает размер участков памяти
Обращение storage(Стек,Динобл,Трейл)
Домены (real,real,real)
Шаблоны описания (вых,вых,вых)
аргументов
Описание storage возвращает размеры трех областей памяти -
стека, динамической области, трейла, используемых
программой.
Для стека и трейла storage возвращает фактическое
количество используемой ими памяти. Это количество
всегда будет меньшим, чем размеры, установленные
соответствующими директивами компилятора. Для
динамической области, storage возвращает количество
свободной памяти, имеющейся в распоряжении. Все
переменные измеряются в байтах.
Неудачное Никогда не дает.
завершение
Ошибки Нет ошибок.
Пример
database
fact(string)
predicates
test
wstor(STRING)
clauses
wstor(TXT):-
storage(Stack, Heap, Trail),
write(TXT,":\n"),
write("Размер Стека=",Stack, ", Размер Дин обл=",
Heap, ", Размер трейла=", Trail),
readchar(_), nl.
test:-
wstor("После вызова теста"),fail.
test:-
file_str("prolog.err", FILE),
wstor("После загрузки в GСтек"),
assert(fact(FILE)),
wstor("После уничтожения файла"),
fail.
test:-wstor("После неудачного выполнения").
goal
makewindow(1, 7, 7, " ПАМЯТЬ ", 0, 0, 20, 80),
wstor("Перед вызовом теста"),
test,
wstor("После выхода из теста").
str_char/2
Назначение Выполняет преобразование (обращение) между
строкой с единственным символом и символом
Обращение str_char(ПарамСтр,ПарамСимв)
Домены (string,char)
Шаблоны описания (вх,вых) , (вых,вх) , (вх,вх)
аргументов
Описание (вых,вх)
Связывает ПарамСтр со строкой, содержащей символ,
описанный ПарамСимв.
(вх,вых)
Связывает ПарамСимв с единственным символом,
содержащимся в строке, с которой связан ПарамСтр.
(вх,вх)
Согласуется, если ПарамСимв и ПарамСтр являются оба
связанными с представлением некоторого символа.
Неудачное Варианты потоков (вх,вых) и (вх,вх) всегда будут
завершение несогласованными, если ПарамСтр не содержит точно
один символ.
Ошибки Нет ошибок.
Пример
Goal: str_char("A",CH)
CH=A
1 Solution
Goal: str_char(STR,'A')
STR=A
1 Solution
Goal: str_char("A",'A')
Yes
Goal: str_char("AB",CH)
No Solution
Goal: str_char("B",'A')
No
str_int/2
Назначение Выполняет преобразование (обращение) между строкой и
целым числом
Обращение str_int(ПарамСтр,ПарамЦел)
Домены (string,integer)
Шаблоны описания (вх,вых) , (вых,вх) , (вх,вх)
аргументов
Описание (вых,вх)
Связывает ПарамСтр со строкой десятичных цифр,
представляющих значение, с которым связан ПарамЦел.
(вх,вых)
Связывает ПарамЦел с внутренним (двоичным)
эквивалентом десятичного числа, с котором связан
ПарамСтр.
(вх,вх)
Согласуется, если ПарамЦел является связанным с
внутренним (бинарным) представлением десятичного
целого, которое связано с ПарамСтр.
Неудачное Варианты потоков (вх,вых) и (вх,вх) будут
завершение несогласованными, если ПарамСтр не образует
правильное целое. В начале строки знак необязателен,
начальные пробелы игнорируются.
Ошибки Нет ошибок.
Пример
Goal: str_int("123",INT)
INT=123
1 Solution
Goal: str_int(STR,123)
STR=123
1 Solution
Goal: str_int("123",123)
Yes
Goal: str_int(" -123 ",INT)
INT=-123
1 Solution
Goal: str_int(" -1x23 ",INT)
No Solution
str_len/2
Назначение Возвращаеет длину строки
Обращение str_len(Стр,Длн)
Домены (string,integer)
Шаблоны описания (вх,вх) , (вх,вых) , (вых,вх)
аргументов
Описание (вх,вх)
Согласуется, если строка Стр имеет длину Длн
символов.
(вх,вых)
Согласуется путем связывания переменной Длн с
количеством символов в строке Стр.
(вых,вх)
Возвращает строку, состоящую из Длн пробелов.
Неудачное Никогда не дает.
завершение
Ошибки Нет ошибок.
Пример
Goal: str_len("abc",Len)
Len=3
1 Solution
Goal: str_len("abc",3)
Yes
Goal: str_len(STR,15),writef("|%|\n",STR)
| |
STR=
1 Solution
str_real/2
Назначение Выполняет преобразование (обращение) между строкой и
вещественным числом
Обращение str_real(ПарамСтр,ПарамВещ)
Домены (string,real)
Шаблоны описания (вх,вых) , (вых,вх) , (вх,вх)
аргументов
Описание (вх,вых)
Связывает ПарамВещ с внутренним (IEEE) эквивалентом
десятичного вещественного числа, с которым связан
ПарамСтр.
(вых,вх)
Связывает ПарамСтр со строкой десятичных цифр,
представляющих значение, с которым связан ПарамВещ.
(вх,вх)
Согласуется, если ПарамВещ является связанным с
внутренним (бинарным) представлением десятичного
вещественного числа, представленного строкой, которая
связана с ПарамСтр.
Неудачное Варианты потоков (вх,вых) и (вх,вх) будут
завершение несогласованными, если ПарамСтр не образует
правильное десятичное число с плавающей точкой.
Ошибки Нет ошибок.
Пример
Goal: str_real("23456789079856",REAL)
REAL=2.345678908E+13
1 Solution
Goal: str_real(STR,-123234.453E-99)
STR=-1.23234453E-94
1 Solution
system/1
Назначение Выполняет команду DOS
Обращение system(СтрКомДос)
Домены (string)
Шаблоны описания (вх)
аргументов
Описание Посылает СтрКомДос DOS для выполнения. Если строка
является пустой (""), введение команд DOS
выполняется в диалоговом режиме.
Неудачное Никогда не дает.
завершение
Ошибки 1013 Неудача в вызове 'system'.
1024 Ошибка, образованная внешней программой.
2011 Невозможно выполнить предикат 'system'.
Пример
goal
makewindow(1, 7, 0, " System ", 0, 0, 25, 80),
write("\nВы можете сейчас выйти в DOS и
возвратиться ",
"\nназад в пролог, введя exit или нажав ENTER.",
"\nУспехов вамk\n\n"),
unreadchar('w'),unreadchar('/'),unreadchar(' '),
unreadchar('r'),unreadchar('i'),unreadchar('d'),
system(""),
write("\nНажмите любую клавишу для продолжения"),
readchar(_), clearwindow,
write("Мы будем сейчас печатать файл:PROLOG.ERR.\n",
"Вы можете остановить просмотр нажав вместе
<CTRL-S>.\n",
"или прекратить выполнение, используя
<CTRL-BREAK>."),
readchar(_), clearwindow,
system("type c:\\prolog\\prolog.err"),
write("Это все!"),
readchar(_).
system/3
Назначение Выполняет команду DOS и возвращает номер ошибки
Обращение system(СтрКомДос,ВостИзобр,НомОшибки)
Домены (string,integer,integer)
Шаблоны описания (вх,вх,вых)
аргументов
Описание Посылает СтрКомДос DOS для выполнения, как в
system/1.
СтрКомДос Имя команды DOS или внешней программы.
ВостИзобр Описывает, будет ли ваша программа
восстанавливать экран в состояние, в
котором он был перед выполнением
СтрКомДос.
0= Не приводить в исходное состояние.
1= Приводить в исходное состояние.
НомОшибки Код выхода для выполненной программы.
Неудачное Никогда не дает.
завершение
Ошибки 1013 Неудача в вызове 'system'.
1024 Ошибка, образованная внешней программой.
2011 Невозможно выполнить предикат 'system'.
Пример
goal
makewindow(1, 7, 0, " System ", 0, 0, 25, 80),
write("Если вы имеете EGA карту и файл
ega43.com существует",
"мы попытаемся вывести вам в 43-строчной форме "),
unreadchar('\13'),unreadchar('t'),
unreadchar('i'),unreadchar('x'),unreadchar('e'),
unreadchar('\13'),unreadchar('3'),unreadchar('4'),
unreadchar('a'),unreadchar('g'),unreadchar('e'),
system("",0,ErrorLevel),
write("\nУровеньОшибки=",ErrorLevel),
readchar(_).
- Справочное руководство по турбо прологу 2.0
- Глава 2. Элементы языка 50
- Глава 3. Интерфейс с другими языками 75
- Часть 2. Стандартные предикаты 91
- Часть 3. Приложения 250
- Введение
- Дистрибутивные диски
- Рекомендуемая литература:
- Часть 1. Руководство программиста по турбо прологу глава 1. Система меню турбо пролога
- Пользователям Турбо Пролога 1.X
- Структура меню Турбо Пролога
- Выбор элементов меню.
- "Горячие" клавиши.
- Системные окна и строки помощи
- Окно редактирования.
- Как войти в окно редактирования
- Компоненты окна редактирования
- Как выйти из окна редактирования.
- Окно трассировки
- Окно сообщений
- Диалоговое окно
- Строка помощи
- Главное меню.
- Окно редактирования.
- Окно вспомогательного редактирования (Xedit).
- Окно просмотра.
- Изменение размера окон.
- Просмотр окон
- Создание нового файла.
- Загрузка существующего файла.
- Команды редактора.
- Сохранение исходного текста в файле.
- Запись исходного текста на диск
- Вспомогательный редактор
- Меню и команды
- Меню файлов (Files)
- Загрузка файлов (Load)
- "Указка" (Pick)
- Новый (New)
- Выход (Quit)
- Команда редактирования (Edit)
- Команда запуска (Run)
- Меню компиляции (Compile)
- Память (Memory)
- Меню опций (Options)
- Опции компоновки (Link Options)
- Стек (Stack)
- Область ссылок (Trail Array)
- "Куча" (Heap)
- Контроль во время исполнения (Run-time check)
- Цвета (Colors)
- Размер окна (Window size)
- Каталоги
- Текущий каталог (Current directory)
- Авто-загрузка сообщений (Avto-Load Message)
- Режим экрана (Screen mode)
- Конфигурация клавиатуры (Keyboard Configuration)
- Перемещение курсора (Cursor movement)
- Глава 2. Элементы языка
- Ключевые слова.
- Специальные предикаты.
- Разделы программы.
- Раздел доменов (domains).
- Стандартные домены.
- Списковые домены.
- Домены составных объектов.
- Файловый домен.
- Специально заданные предопределенные домены.
- Сокращение объявлений доменов.
- Объявление ссылочных доменов.
- Раздел предикатов (predicates).
- Раздел базы данных (database).
- Раздел предложений (clauses).
- Простые константы.
- Переменные.
- Составные объекты.
- Списки - Специальный вид составных объектов.
- Раздел констант.
- Условная компиляция.
- Включение файлов в вашу программу.
- Директивы компилятора.
- Управление памятью в Турбо Прологе.
- Экономия ресурсов памяти.
- Управление распределением памяти.
- Генерирование выполняемых программ.
- Модульное программирование.
- Проекты.
- Глобальные объявления.
- Глобальные домены.
- Глобальная база данных.
- Глобальные предикаты.
- Компиляция и компоновка модулей.
- Пример.
- Глава 3. Интерфейс с другими языками
- Вызов других языков из Турбо Пролога.
- Что делать перед вызовом.
- Объявление внешних предикатов.
- Вызов соглашений и передача параметров.
- Соглашение об обозначениях
- Использование ключевого слова as
- Вызов процедуры, написанной на Си из Пролога.
- Опции компилятора Турбо Си и компоновка.
- Вызов программ на языке ассемблера из Турбо Пролога.
- Использование внутреннего ассемблера Турбо Си.
- Вызов Турбо Пролога из других языков.
- Динамическое распределение памяти.
- Передача составных объектов в другие языки.
- Передача списков.
- Передача структур.
- Примеры.
- Обработка списков.
- Программирование на низком уровне.
- Часть 2. Стандартные предикаты
- Arc/5 Графика
- Bar/4 Графика
- Bt_close/2 Внешняя База Данных
- Bt_create/5 Внешняя База Данных
- Bt_delete/2 Внешняя База Данных
- Bt_open/3 Внешняя База Данных
- Bt_statistics/8 Внешняя База Данных
- Chain_delete/2 Внешняя База Данных
- Chain_first/3 Внешняя База Данных
- Chain_inserta/5 Внешняя База Данных
- Chain_insertafter/5 Внешняя База Данных
- Chain_insertz/5 Внешняя База Данных
- Chain_last/3 Внешняя База Данных
- Chain_next/3 Внешняя База Данных
- Chain_prev/3 Внешняя База Данных
- Chain_terms/5 Внешняя База Данных
- Circle/3 Графика
- Cleardevice/0 Графика
- Clearviewport/0 Графика
- Closegraph/0 Графика
- Db_btrees/2 Внешняя База Данных
- Db_chains/2 Внешняя База Данных
- Db_close/1 Внешняя База Данных
- Db_create/3 Внешняя База Данных
- Db_delete/2 Внешняя База Данных
- Db_flush/1 Внешняя База Данных
- Db_garbagecollect/1 Внешняя База Данных
- Db_open/3 Внешняя База Данных
- Db_openinvalid/3 Внешняя База Данных
- Db_statistics/5 Внешняя База Данных
- Detectgraph/2 Графика
- Drawpoly/1 Графика
- Ellipse/6 Графика
- Fillellipse/4 Графика
- Fillpoly/1 Графика
- Floodfill/3 Графика
- Getarccoords/6 Графика
- Getaspectratio/2 Графика
- Getbkcolor/1 Графика
- Getcolor/1 Графика
- Getdefaultpalette/1 Графика
- Getdrivername/1 Графика
- Getfillpattern/1 Графика
- Getfillsettings/2 Графика
- Getgraphmode/1 Графика
- Getimage/6 Графика
- Getlinesettings/3 Графика
- Getmaxcolor/1 Графика
- Getmaxx/1 Графика
- Getmaxy/1 Графика
- Getmaxmode/1 Графика
- Getmodename/2 Графика
- Getmoderange/3 Графика
- Getpalette/1 Графика
- Getpalettesize/1 Графика
- Getpixel/3 Графика
- Gettextsettings/5 Графика
- Getviewsettings/5 Графика
- Getx/1 Графика
- Gety/1 Графика
- Graphdefaults/0 Графика
- Graphresult/1 Графика
- Imagesize/5 Графика
- Initgraph/5 Графика
- Key_current/4 Внешняя База Данных
- Key_delete/4 Внешняя База Данных
- Key_first/3 Внешняя База Данных
- Key_insert/4 Внешняя База Данных
- Key_last/3 Внешняя База Данных
- Key_next/3 Внешняя База Данных
- Key_prev/3 Внешняя База Данных
- Key_search/4 Внешняя База Данных
- Line/4 Графика
- Linerel/2 Графика
- Lineto/2 Графика
- Moverel/2 Графика
- Moveto/2 Графика
- Outtext/1 Графика
- Outtextxy/3 Графика
- Pieslice/5 Графика
- Pieslicexy/6 Графика
- Putimage/4 Графика
- Putpixel/3 Графика
- Rectangle/4 Графика
- Restorecrtmode/0 Графика
- Setactivepage/1 Графика
- Setallpalette/1 Графика
- Setaspectratio/2 Графика
- Setbkcolor/1 Графика
- Setcolor/1 Графика
- Setfillpattern/2 Графика
- Setfillstyle/2 Графика
- Setgraphmode/1 Графика
- Setgraphbufsize/1 Графика
- Setlinestyle/3 Графика
- Setpalette/2 Графика
- Setrgbcolor/4 Графика
- Settextjustify/2 Графика
- Settextstyle/3 Графика
- Setusercharsize/4 Графика
- Setviewport/5 Графика
- Setvisualpage/1 Графика
- Setwritemode/1 Графика
- Term_delete/3 Внешняя База Данных
- Term_replace/4 Внешняя База Данных
- Textheight/2 Графика
- Textwidth/2 Графика
- Часть 3. Приложения приложение а. Введение вdos
- Что такое dos
- Как загрузить программу?
- Каталоги
- Подкаталоги
- Avtoexec.Bat-файл
- Команда path
- Смена каталогов
- Приложениеb. Интерактивный редактор турбо пролога
- Быстрый вход, быстрый выход
- Служебная строка окна редактора
- Основные команды редактора
- Команды Редактора, совпадающие с командами WordStar Основные команды работы с курсором
- Команды быстрого движения курсора
- Команды вставки и удаления
- Команды работы с блоками
- Остальные команды редактора
- Старые команды
- Поиск и замена
- Редактор Турбо Пролога по сравнению с WordStar
- Корректировка файла на диске.
- Приложение c. Сообщения об ошибках
- Приложение d. Различия между версиями 1.1 и 2.0
- Файл определения проекта
- Новые ограничения по именам
- Новые предопределенные домены
- Контроль состава параметров шаблона (flow pattern)
- Поддержка старых командных клавиш редактора
- Ошибочные ситуации в стандартных предикатах
- Расширение Турбо Пролога 2.0
- Системные расширения
- Приложениеe. Словарь специальных терминов
- Приложение f. Географическая база данных (Geobase)
- Использование Geobase
- Системы с 2-мя флоппи-дисковыми устройствами
- Компиляция Geobase
- Создание автономной программы
- Главное меню Geobase
- Справка
- Команды dos
- Редактор
- Запросы к базе данных
- Просмотр языка
- Корректировка языка
- Принципы Geobase
- Использование принципа Geobase
- Создание вашей базы данных
- Преобразование Geobase
- Предикат "ent"
- Предикат "db"
- Трансляция запросов на естественном языке
- Внутренние имена объектов
- Внутренние имена связей
- Определение структуры предложений
- База данных языка
- Грамматический разбор с помощью разделения списков
- Заключение
- Приложение g. Анализатор предложений на турбо прологе
- Использование анализатора предложений
- Помощь пользователя
- Операционная система
- Редактирование базы данных
- Загрузка базы данных из файла
- Сохранение базы данных
- Анализ предложений
- «Показать/изменить словарь»
- Приложениеh.Geni: оболочка экспертной системы
- Использование geni
- Запросы geni
- Просмотр знаний
- Корректировка базы знаний
- Сохранение базы знаний
- Создание новой базы знаний
- Чистка текущей базы знаний
- Проектирование новой базы знаний
- Приложение I. Tlib: библиотека турбо
- Компоненты командной строки tlib
- Компонент «описание»
- Список операций
- Имена файла и модуля
- Операции tlib
- Создание библиотеки
- Использование файла ответа
- Расширенные возможности: опция /с
- Примеры
- Приложение j. Tlink: компоновщик турбо
- Активизация tlink
- Использование ответных файлов
- Компоновка модулей Турбо Пролога и Турбо Си.
- Модуль инициализации
- Библиотеки
- Опции tlink
- Опция /c
- Опция /d
- Опция /I
- Опция /l
- Опции /m, /s, /X
- Опция /m
- Опция /s
- Опция /X
- Опция /n
- Ограничения
- Сообщения об ошибках
- Предупреждения
- Нефатальные ошибки
- Фатальные ошибки
- Приложение k. Метапрограммирование Введение
- Пролог/Турбо: развитие и философские установки
- Конструкторские решения в Турбо Прологе
- Чем Турбо зарядило Турбо Пролог
- Интерпретатор правил с обратной цепочкой рассуждений
- Термы (горючее для интерпретатора правил)
- Статические термы: область sTerm (статических термов)
- Интерпретирование области термов.
- Что такое интерпретатор?
- Интерпретация правил в Прологе
- Использование sTerm и aTerm для моделирования интерпретатора правил
- Переменные и среда
- Процесс унификации
- Унификация статических и действительных термов
- Интерпретация тела правила
- Выполнение выполняемых термов: предикат call.
- Встроенные предикаты
- Сканнер и транслятор
- Операторы традиционного Пролога
- Использование операторов в Турбо Прологе
- Интерпретатор Пролога
- Реализация трассировки
- Теперь объединим все вместе
- Расширения экспертной системы
- Цепочка с прямым порядком рассуждений
- Стандартные предикаты, реализованные в pie
- Заключение