У Клоксин , К Меллиш - Программирование на языке Пролог
Название: | Программирование на языке Пролог | |
Автор: | У Клоксин , К Меллиш | |
Жанр: | Литература ХX века (эпоха Социальных революций), Советские издания, Искусственный интеллект, Prolog | |
Изадано в серии: | неизвестно | |
Издательство: | неизвестно | |
Год издания: | - | |
ISBN: | неизвестно | |
Отзывы: | Комментировать | |
Рейтинг: | ||
Поделись книгой с друзьями! Помощь сайту: донат на оплату сервера |
Краткое содержание книги "Программирование на языке Пролог"
Книга английских специалистов, содержащая описание основ логического программирования и особенностей языка Пролог – базового языка ЭВМ пятого поколения. Области применения этого языка связаны с разработкой экспертных систем, интеллектуальных баз данных, обработкой естественного языка, разработкой компиляторов ЭВМ. Книга полезна для первого ознакомления с языком Пролог.
Читаем онлайн "Программирование на языке Пролог". [Страница - 148]
ask_the_user:- broken _call(С), outterm("How to continue from: "), outterm(C), outterm("?"), nl, interm(C), ineot.
где broken_call(С) - это стандартный предикат, конкретизирующий переменную С ошибочным целевым утверждением. Выполнив целевое утверждение
newhandler("undefined predicate", ask_the_user)
система будет вызывать ask_the_user (спроси_у_пользователя) всякий раз, когда что-либо окажется неопределенным. Например, определив предикаты плотность и нас как в разд. 2.5, но оставив неопределенным предикат площадь:
плотность(X,Y):- нас(X,Р), площадь(X,A), Y is P/A.
нас(китай,800).
. . .
мы можем наблюдать следующий диалог:
*? плотность(китай,D).
How to continue from площадь(китай,_101)?
* площадь(китай,4).
D = 200
Continue (y/n)?
* y
NO
*? плотность(китай,D).
How to continue from площадь(китай,_101)?
* n.
NO
Другой важный встроенный предикат – это error_protect (Call, Handler), который выполняет целевое утверждение Call в защищенном окружении: когда внутри Call возникает особая ситуация (не обрабатываемая текущим обработчиком особых ситуаций), выполняется Handler.
Средства отладки
Средства трассировки МПролога аналогичны тем, что имеются в Прологе-10.
Литература
MPROLOG Language Reference ManualMPROLOG User's Guide /VAX/11-VMS/ MPROLOG User's Guide /VAX/11 – UNIX/ MPROLOG User's Guide /IBM – VM/CMS/ MPROLOG User's Guide /Siemens BS2000/
Getting Started with MPROLOG
Указанная литература может быть получена через институт по координации вычислительной техники (SZKI), г. Будапешт, ВНР.
Примечания
1
В книге термин «Пролог» употребляется в трех значениях: 1) Пролог – язык программирования с совокупностью синтаксических и семантических правил записи программ; 2) Пролог – программная система (интерпретатор), реализующая язык; эта система и осуществляет диалог с пользователем; 3) Пролог – машина, на которой Пролог-система выполняет (интерпретирует) программы, написанные на языке Пролог. Как правило, из контекста всегда ясно, какое значение используется в каждом конкретном случае. При необходимости явного указания при переводе использовались термины: «язык Пролог», «Пролог-система», «Пролог-машина». - Прим. пepeв.(обратно)
2
Связь введенного понятия с математической логикой обсуждается в гл. 10. - Прим. ред.(обратно)
3
В записи программ на Прологе и в ответах Пролог-системы используются слова двух типов: 1) имена, определяемые пользователем (например, джон, книга, нравится); 2) имена и служебные слова, определенные в языке Пролог (например, is, get). Учитывая, что слова первого типа имеют некоторую смысловую нагрузку (для читателя, но не для Пролога), все они переведены на русский язык. Слова второго типа зарезервированы в языке Пролог. Поэтому в тексте они оставлены в исходном виде, за исключением переведенных на русский язык ответов Пролога на вопросы yes - да, no – нет.- Прим. перев.(обратно)
4
В оригинале – clause for a predicate – термин, определяющий конъюнкты предиката, переменные которых связаны квантором общности. Связь этого понятия с математической логикой обсуждается в гл. 10.- Прим. ред.(обратно)
5
В книге ничего не говорится о буквах русского алфавита. Мы будем считать, что в набор допустимых литер Пролога входят русские буквы – строчные и прописные. - Прим. ред.(обратно)
6
Код ASCII соответствует коду КОИ-7, широко распространенному на ЭВМ нашей страны. Различие имеет место лишь для кириллицы, отсутствующей в коде ASCII. - Прим. перев.(обратно)
7
Это могло бы привести к успеху при соответствующем определении предиката мать. - Прим. ред.(обратно)
8
В оригинале использован термин Пролога «cut», и при переводе точнее было бы применить термин «сокращение». Однако, следуя терминологии более ранних публикаций о Прологе, мы сохраним термин «отсечение». - Прим. ред.(обратно)
9
Модель, лежащая в основе трассировки, подробно описывается в гл. 8. - Прим. ред. (обратно)10
Имеется перевод: Нильсон Н. Принципы --">Книги схожие с «Программирование на языке Пролог» по жанру, серии, автору или названию:
У. Маурер - Введение в программирование на языке ЛИСП Жанр: Lisp, Scheme Год издания: 1976 Серия: Математическое обеспечение ЭВМ |
Юджин Василеску - Прикладное программирование на языке Ада Жанр: Программирование: прочее Год издания: 1990 |
Лео Броуди - Начальный курс программирования на языке Форт Жанр: Литература ХX века (эпоха Социальных революций) Год издания: 1990 |
У. Клоксин, К. Меллиш - Программирование на языке Пролог Жанр: Программирование: прочее Год издания: 1987 Серия: Математическое обеспечение ЭВМ |