Главная
страница 1страница 2 ... страница 15страница 16


Using Turbo Prolog

Для чего нужен Турбо-Пролог?

Турбо-Пролог является компиляторно-ориентированным языком программирования высокого уровня; разработан фирмой Borland International и предназначен для программирования задач из области искусственного интеллекта. Как язык программирования ИИ Турбо-Пролог особенно хорош для создания экспертных систем, динамических баз данных, программ с применением естественно-языковых конструкций; он также может быть использован и для других задач общего характера. Турбо-Пролог имеет окна, цветную графику и интерактивные средства ввода-вывода, что свидетельствует о его максимальном удобстве для пользователя прикладных программ.

Встроенные предикаты Турбо-Пролога и другие дополнительные возможности делают его пригодным для решения многих стандартных задач из сферы бизнеса, включая бухгалтерский учет, расчет зарплаты и представление графиков.

Популярность Пролога резко возросла после того, как он был выбран в качестве базового языка японской программы ЭВМ пятого поколения. Спрос на программы искусственного интеллекта, применяемые либо взамен, либо совместно с традиционными прикладными программами, постоянно увеличивается. В ходе продолжающейся эволюции применений вычислительной техники наблюдается все возрастающая потребность в создании прикладных программ на Прологе. Турбо-Пролог может прекрасно удовлетворить такую потребность.

Наряду с Турбо-Прологом в США созданы еще несколько реализаций Пролога: Arity Prolog, Prolog II, Wisdom Prolog и Micro Prolog. В отличие от них Турбо-Пролог имеет великолепный полноэкранный редактор, множество рабочих окон и Интерактивный диалоговый отладчик. Он поддерживает цветную графику IBM PC, снабженного цветным графическим адаптером (CGA) и расширенным графическим адаптером (EGA). Предикаты графики и система с графическим экранным пером являются составной частью Турбо-Пролога. Он также снабжен средствами работы с последовательными файлами, файлами прямого доступа и двоичными файлами.

Еще одной причиной предпочтительности выбора Турбо-Пролога является то, что написанные на нем программы компилируются, в отличие от других версий Пролога, где программа интерпретируется. Интерпретатор выбирает предложения программы одно за другим и последовательно исполняет их. Компилятор транслирует в машинные коды сразу весь текст программы. Турбо-Пролог транслирует исходный текст программы особенно быстро (быстрее всех других версий Пролога для компьютеров IBM PC). Также он позволяет легко создавать отдельные выполнимые файлы. Далее, Турбо-Пролог имеет прекрасный пользовательский интерфейс для отладки программ. Другими словами, Турбо-Пролог - это наилучший товар на рынке программного обеспечения на сегодняшний день.



Что такое Пролог?

Название Пролог произошло от словосочения "программирование при помощи логики" (Prolog - PROgramming in LOGic). Пролог был разработан и впервые реализован в 1973 г. Алэном Колмероэ и другими членами "группы искусственного интеллекта" (Франция) Марсельского университета. Главной задачей группы было создание программы для перевода с естественного языка. С тех пор было сделано несколько расширений и усовершенствований языка, здесь можно отметить работу группы из Эдинбургского университета (Шотландия). Шотландский вариант получил название C&M Prolog в честь авторов классической работы "Программирование на Прологе" Уильяма Клоксина и Кристоффера Меллиша. Хотя официального стандарта Пролога не существует, в этой книге приведен тот его вариант, который считается неофициальным стандартом.

Турбо-Пролог имеет несколько отличий. В нем отсутствуют некоторые элементы C&M, но такие, которые встречаются только очень сложных программах. Самым существенным отличием от упомянутого стандарта (как и от других версий языка) является наличие в Турбо-Прологе строгой типизации элементов данных. Сделанные отступления от неофициального стандарта позволили значительно увеличить скорость трансляции и счета программ. И хотя некоторые программисты возражают против этих отступлений, говоря что Турбо-Пролог не есть Пролог "в чистом виде", однако именно в таком виде язык имеет массу преимуществ, например наличие графики и возможность работы с окнами. Этих средств нет в других реализациях. Независимо от того, является ли Турбо-Пролог "чистым" Прологом или нет, он тем не менее является очень современным, полноценным и гибким языком программирования.

Турбо-Пролог и другие языки программирования

Такие языки программирования, как Паскаль, Бэйсик и Си относятся к разряду императивных или процедурных. Программа, написанная на императивном языке, состоит из последователь ности команд, определяющих шаги, необходимые для достижения назначения программы. Пролог является декларативным языком.

Программа на декларативном языке являет собой набор логический описаний, определяющих цель, ради которой она написана.

Таким образом в Прологе отсутствуют такие явные управляющие структуры, как DO WHILE и IF ... THEN. Вместо расписывания шагов выполнения программы программист должен определить логический метод для достижения цели программы. Мощные внутренние унификацонные процедуры (работа которых будет пояснена в гл. 2) будут затем искать решение поставленной задачи.

Сила Турбо-Пролога заключается в его возможностях поиска и сопоставления. Внутренние унификационные процедуры бесстрастно перебирают все возможные комбинации правил, пытаясь удовлетворить заданную программистом цель. Пролог, как видим, базируется на естественных для человека логических принципах, и поэтому, чем больше вы им занимаетесь, тем он становится все более привлекательным.

Что включено в настоящую книгу?

Данная книга состоит из двух частей. Первая часть, включающая восемь глав, содержит основы языка и техники программирования на нем. Для иллюстрации различных приемов программирования в каждой главе приводятся небольшие программы. Во второй части книги приведены проекты и конкретные реализации на Турбо-Прологе программ по четырем основным разделам искусственного интеллекта: экспертным системам, базам данных, общению с ЭВМ на естественном языке, а также играм и головоломкам. Каждая глава второй части завершается большой законченной прикладной программой. Читатель увидит, как можно постепенно наращивать программу, не забывая о ее эффективности. В дополнение, на протяжении всего изложения приводятся способствующие самообучению упражнения, стимулирующие самостоятельную работу с программами.

Глава 1, "Начало работы с Турбо-Прологом", содержит информацию об основных возможностях системы, а также исчерпывающие указания по настройке пакета Турбо-Пролога версии 1.1 для систем, использующих винчестерские диски, и систем с двумя гибкими дисками.

Глава 2, "Основные понятия Турбо-Пролога", содержит логические основы Турбо-Пролога. Такие фундаментальные понятия как сопоставление, откат, инициализация и связывание помогут вам понять как внутренние унификационные подпрограммы Турбо-Пролога обрабатывают цели, которые Вы определили для программы. Все эти понятия рассматриваются в данной главе.

Глава 3, "Основы программирования на Турбо-Прологе", описывает структуру и синтаксис программ Турбо-Пролога. Для стимуляции активного освоения материала в этой главе приводится много коротких программ, демонстрирующих основные приемы программирования. В довершение описываются два полезных инструмента программирования, доменная и предикатная структурные диаграммы.

Глава 4, "Повторение и рекурсия", посвящена основным приемам выполнения итеративных задач. Два метода повтора - Откат После Неудачи и Отсечение и Откат, а так же три рекурсивных метода - Отсечение и Неудача, Повтор Определенный Пользователем и Рекурсивное правило общего вида - основные темы этой главы.

Глава 5, "Использование списков", дает представление о том, как надо создавать списки и выполнять над ними такие операции, как поиск в списке нужного элемента, деление списка и слияние двух списков. Вновь, короткие программы приводятся для лучшего понимания разбираемых концепций и техники программирования.

Глава 6, "Использование строк", содержит описание набора символов, используемых в Турбо-Прологе, а также понятий строки и операций над строками. Примеры программ демонстрируют расщепление и соединение строк, поиск символа или подстроки внутри заданной строки, а также другие операции.

Глава 7, "Использование файлов", начинается с описания возможных конфигураций устройств IBM PC. Далее обсуждаются способы создания файлов, записи в них данных и считывания их оттуда. Материал поясняется на конкретных примерах.

Глава 8, "Использование окон, графики и звука", содержит описание превосходных средств Турбо-Пролога для организации окон. Примеры используются для демонстрации создания множества окон и средств управления вводом/выводом из одного окна в другое. Рассматриваются графические режимы и средства их использования, а также программы, которые демонстрируют создание линейных графов, столбиковых и круговых диаграмм.

Другие программы демонстрируют графику, связанную с положением курсора, которая также входит в состав средств Турбо-Пролога, и является весьма популярной. Рассматриваются звуковые предикаты Турбо-Пролога, которые используются для создания музыкальных фраз.

Глава 9, "Создание динамических баз данных", является первой главой второй части книги. В этой главе многие из ранее приведенных приемов программирования находят применение при создании системы управления реляционной базой данных.

Материал главы позволяет в полной мере оценить всю мощь работы внутренних унификационных процедур Турбо-Пролога.

Глава 10, "Построение экспертных систем", посвящена структуре процесса создания экспертных систем. Рассматриваются такие понятия как база знаний, машина вывода и система пользовательского интерфейса в контексте систем, основанных на правилах и логике, применительно к Турбо-Прологу. Приводятся три различные программы для экспертных систем. Эти программы дают определенный опыт работы в этой интересной области.

Глава 11, "Общение с компьютером на естественном языке", знакомит с техникой обработки естественно-языковых конструкций и наиболее распространенными методами языкового анализа. Материал главы дает понятие о том, как средства Турбо-Пролога для работы со списками и строками могут быть применены при создании несложных естественно-языковых интерфейсов. Приведенные программы дают возможность пронаблюдать в работе рассмотренные приемы программирования в процессе работы, с тем чтобы использовать их в дальнейшем для своих собственных нужд.

Глава 12, "Создание игр и головоломок", содержит общие методы создания игр и головоломок на Турбо-Прологе. Эта техника демонстрируется на примерах игры в отгадывание числа, двух версий игры в 23 спички, игры в поиск по образцу и игры на основе знаменитой задачи об обезьяне и бананах.

Книга "Использование Турбо-Пролога" имеет шесть приложений. Приложение А является кратким руководством по использованию редактора Турбо-Пролога. Приложение В рассказывает о

тех возможностях системы, которые не были затронуты в тексте глав. Приложение С представляет собой краткое изложение основных команд и функций PC DOS (MS DOS), операционной системы, применяемой на компьютерах IBM PC и совместимых с ними.

Приложение D содержит небольшой глоссарий терминов Турбо-Пролога. В приложении E читатель найдет краткую библиографию книг для дальнейшего чтения. В приложение F описываются стандартные предикаты Турбо-Пролога; многие из них играют весьма существенную роль при написании сложных прикладных программ.
Глава 1. Начала работы на Турбо-Прологе
1.1. Введение
Турбо-Пролог - это осуществленная компанией Borland International реализация языка программирования высокого уровня Пролог компиляторного типа.Ее отличает большая скорость компиляции и счета. Турбо-Пролог предназначен для выдачи ответов, которые он логически выводит при посредстве своих мощных внутренних процедур. Так программа на Турбо-Прологе в несколько строк может заменить несколько страниц текста при программировании на каком-либо другом языке.

Благодаря наличию мощных средств сопоставления, Турбо-Пролог пригоден не только для использования в приложениях, относящихся к области искусственного интеллекта и обработке естественно-языковых конструкций, но также применим в таких традиционных областях, как, например, управление базами данных.

Турбо-Пролог предназначен для машин класса IBM PC и совместимых с ними. Для эффективного применения системы программирования Турбо-Пролог программисту необходимо представление о вычислительном комплексе, на котором он собирается работать, и основных особенностях языка. Если он вообще не знаком ни с операционной системой, стоящей на вашем компьютере (PC DOS или MS DOS), ни с ее наиболее употребляемыми командами, то перед чтением первой главы настоятельно советуем заглянуть в приложение С данной книги.

В первом разделе главы кратко описывается версия Турбо-Пролог 1.1 и даются инструкции по установке ее как в системах, оснащенных винчестерским диском, так и в системах с двумя дисководами для гибких дисков. В следующих разделах разбираются характерные действия, применяемые во время сеанса работы с системой. вы научитесь запускать Турбо-Пролог и использовать наиболее часто употребляемые системные команды.

Наконец, вы познакомитесь с функциями главного меню системы Турбо-Пролог.
1.2. Пакет системы Турбо-Пролог
Пакет компилятора Турбо-Пролог состоит из двух дистрибутивных дисков и Руководства пользователя, насчитывающего свыше 200 страниц. Один диск имеет имя PROGRAM DISK, другой - LIBRARY&SAMPLE PROGRAMS. В табл.1 приведены описания файлов, содержащихся на обоих дистрибутивных дисках.
1.Содержимое диска PROGRAM DISK:

PROLOG.EXE ­  основной файл системы Турбо-Пролог

PROLOG.OVL - оверлейный файл, используемый системой при запуске, при создании .EXE файлов и при выполнении некоторых других функций

PROLOG.SYS - файл, содержащий информацию о цвете, расположении окон системы, также как и информацию об использумых системой директориях

PROLOG.ERR - файл с сообщениями об ошибках

PROLOG.HLP - файл с текстом применяемых в системе подсказок (обращение к нему осуществляется при помощи функциональной клавиши F1)

GEOBASE.PRO - демонстрационная программа базы данных и по географии США GeoBASE GEOBASE.INC

GEOBASE.DBA - данные для программы GeoBase

GEOBASE.HLP - текст подсказок программы GeoBase

README.COM - программа для выдачи на экран содержимого файла README

README - текстовой файл, содержащий необходимую для работы информацию, не включенную в Руководство пользователя Турбо-Пролога
2.Содержимое диска LIBRARY&SAMPLE PROGRAMS:

PROLOG.LIB - файлы, используемые системой Турбо-Пролог и при создании выполнимых файлов

INIT.OBJ

EXAMPLES - директория, содержащая программы, используемые в разделе обучения Руководства пользователя

ANSWERS - директория, содержащая ответы на упражнения из Руководства

PROGRAMS - директория, содержащая демонстрационные программы


1.2.1. Турбо-Пролог версии 1.1
Пакет Турбо-Пролога версии 1.1 включает два дистрибутивных диска, Руководство пользователя и один или два буклета, содержащих опечатки и исправления. В начале работы с пакетом следует убедиться в том, что вы получили все его компоненты.

Первый буклет содержит описания новых возможностей и предикатов версии 1.1, а также коррекцию некоторых разделов Руководства и новый индекс. Второй буклет содержит аналогичную информацию, однако он необходим только лишь для некоторых изданий Руководства. Если вы получили этот буклет, следует посмотреть инструкции на первой его странице, чтобы определить, приложим ли буклет к вашему экземпляру Руководства.


1.2.2. Установка системы Турбо-Пролог версии 1.1
Турбо-Пролог может быть запущен на персональном компьютере, оснащенном либо винчестерским диском, либо двумя дисководами для гибких дисков. В любом случае требуется наличие оперативной памяти объемом не менее 384К. На компьютере должна стоять версия операционной системы PC DOS с индексом 2.0 и выше.

Перед установкой Турбо-Пролога необходимо сделать копии дистрибутивных дисков при помощи команды DISKCOPY. (Если вы не знакомы с этой командой, обратитесь к приложению С настоящей книги.) Для предотвращения нежелательных инциндентов, перед началом копирования необходимо установить защиту дистрибутивных дисков. Пометьте полученные копии и уберите оригиналы в надежное место.

Если на вашем компьютере имеется винчестерский диск, то дальнейшие указания вы получите из следующего раздела главы; если такой диск отсутствует, вам следует обратиться к разделу "Установка Турбо-Пролога на компьютер с двумя дисководами для гибких дисков".
Установка Турбо-Пролога на компьютер с винчестерским диском
Для установки Турбо-Пролога версии 1.1 на компьютер, оснащенный винчестерским диском, необходимо создать на этом диске дерево директорий и скопировать туда дистрибутивные файлы. Дерево директорий должно быть точно таким же, как и на дистрибутивном гибком диске.

В дальнейшем мы будем предполагать, что винчестерский диск на вашей машине именуется как С:. В таком случае выдаваемое системой приглашение к работе будет выглядеть как С>.

1. Создайте необходимые директории, используя команды DOS

MD \TBPROLOG

MD \TBPROLOG\EXAMPLES

MD \TBPROLOG\ANSWERS

MD \TBPROLOG\PROGRAMS
2. Скопируйте файлы из директорий дистрибутивного диска:

а. Поместите рабочую копию диска PROGRAM DISK в дисковод А:.

б. Настройтесь на директорию TBPROLOG при помощи команды
CD \TBPROLOG
в. Скопируйте файлы с гибкого диска в директорию TBPROLOG:
COPY A:*.* C:/V
г. Выньте диск PROGRAM DISK и вставьте вместо него диск LIBRARY&SAMPLE PROGRAMS.
д. Скопируйте системные файлы PROLOG.LIB и INIT.OBJ в директорию TBPROLOG.
COPY A:PROLOG.LIB C:/V

COPY A:INIT.OBJ C:/V


е. Скопируйте все остальные файлы с дистрибутивного гибкого диска, используя для этого команды
COPY A:\EXAMPLES\*.* C:\TBPROLOG\EXAMPLES/V

COPY A:\ANSWERS\*.* C:\TBPROLOG\ANSWERS/V

COPY A:\PROGRAMS\*.* C:\TBPROLOG\PROGRAMS/V
Теперь на винчестерский диск скопированы абсолютно все дистрибутивные файлы. Более того, создано дерево, аналогичное тому, что присутствует на дистрибутивном диске. Каталог всех созданных директорий можно просмотреть при помощи описанных в приложении С команд CD и DIR.
Установка Турбо-Пролога на компюьтер с двумя дисководамидля гибких дисков
Для установки Турбо-Пролога версии 1.1 на компьютер с двумя дисководами для гибких дисков необходимо предпринять описанные ниже шаги (предполагается, что дисководы именуются как А: и В:). Перед началом работы, однако, необходимо убедиться в том, что у вас имеются три чистых гибких диска.

1. При помощи команды FORMAT отформатируйте все три своих диска (в случае затруднений обращайтесь к приложению С):


а. Поместите системный диск DOS в дисковод А:, а один из чистых дисков - в дисковод В: , и введите команду
FORMAT B: /S
Опция /S вызовет копирование системных файлов DOS, так что новый диск можно будет использовать для начальной загрузки компьютера. Когда команда FORMAT спросит о необходимости форматирования еще одного диска, введите в качестве ответа N. (Если ввести Y и продолжить форматирование, то системные файлы одновременно окажутся и на других ваших дисках.)

Выньте диск из дисковода В: и пометьте его как Диск начальной загрузки Турбо-Пролога.


б. Вставьте в дисковод В: следующий пустой диск и введите команду
FORMAT B:
(уже бeз /S). В ответ на запрос системы введите Y.
в. Вставьте в дисковод В: третий чистый диск, и отформатируйте его, следуя инструкциям. В ответ на запрос введите букву N. Пометьте второй ваш диск как Рабочий диск Турбо-Пролога, а третий - как Библиотечный диск Турбо-Пролога.
2. Поместите рабочую копию диска PROGRAM DISK в дисковод :, а Диск начальной загрузки Турбо-Пролога - в дисковод В:, после чего введите команду
COPY A:PROLOG.* B: /V
которая скопирует все системные файлы Турбо-Пролога.
3. Вставьте затем в дисковод В: Рабочий диск Турбо-Пролога (вместо Диска начальной Загрузки) и введите команду
COPY A:GEOBASE.* B: /V
Выньте из дисковода А: находящийся в нем диск и вставьте на его место диск LIBRARY&SAMPLE PROGRAMS. Введите команду
COPY A:EXAMPLES\*.* B: /V
а затем выньте диски из обоих дисководов.
4. Вставьте теперь в дисковод А: диск с операционной системой DOS, и введите приказ
DISKCOPY A: B:
Когда система попросит вас вставить в дисковод В: целевой диск, выньте диск с DOS и вставьте на его место (в дисковод А:) рабочую копию диска LIBRARY&SAMPLE PROGRAMS, а в дисковод В: - Библиотечный диск Турбо-Пролога. После этого нажмите клавишу Enter.
Теперь у вас есть три рабочих диска, содержащих систему Турбо-Пролог целиком: Диск начальной загрузки Турбо-Пролога, Рабочий диск и Библиотечный диск. О том, как запустить систему, вы узнаете из следующего раздела главы.
1.3 Запуск Турбо-Пролога
Теперь, когда система Турбо-Пролог на компьютере установлена, ее можно запустить посредством следующих несложных операций.

Система с винчестерским диском: Запуск Турбо-Пролога включает загрузку операционной системы, переход в соответствующую директорию и вызов программы компилятора.


1. Включите компьютер. Когда система попросит ввести текущие дату и время, либо задайте их, либо просто нажмите клавишу Enter. (Лучше, конечно, задать и дату, и время.) По прошествии очень небольшого времени будет выдано приглашение к работе С>, которое означает, что операционная система загружена.
2. Перейдите в директорию Турбо-Пролога посредством приказа
CD \TBPROLOG
Чтобы убедиться в правильности своих действий, вы можете просмотреть каталог директории, введя команду
DIR
Система выдаст заголовок \TBPROLOG, и список всех содержащихся в этой директории файлов.
3. Вызов самого Турбо-Пролога осуществляется приказом
PROLOG
Компьютер при этом прочитает системные файлы Турбо-Пролог и загрузит их в оперативную память.
Система с гибкими дисками: Запуск Турбо-Пролога состоит из двух стадий: загрузки с гибкого диска операционной системы DOS и непосредственный запуск системы Турбо-Пролог. Пользователь должен предпринять следующие действия:
1. Вставить Диск начальной загрузки в дисковод А:, а Рабочий диск Турбо-Пролога - в дисковод В:, затем включить компьютер. После того, как последует запрос ввести дату и время, либо проделать требуемую операцию, либо просто нажать клавишу Enter. (Лучше, конечно, задать и дату, и время.) По прошествии очень небольшого промежутка времени будет выдано приглашение к работе С>, которое означает, что операционная система загружена.
2. Запустить систему Турбо-Пролог, введя команду
PROLOG
Компьютер при этом считает системные файлы Турбо-Пролог и загрузит их в оперативную память.
Первым, что вы увидите после активизации системы, будет начальная заставка Турбо-Пролога.

Заставка состоит из двух окон. Текст в верхнем окне информирует о годе выпуска и номере используемой версии системы. Нижнее окно дает сведения о заданной по умолчанию конфигурации Турбо-Пролога. В первой строке присутствует заданное по умолчанию имя программного файла. Остальные строки высвечивают имена рабочих директорий системы: директории файлов исходных текстов программ (PRO directory), директории объектных файлов (OBJ directory), директории выполнимых файлов (EXE directory) и системной директории Турбо-Пролога (TURBO directory). (Если у вас возникнут затруднения с заданием директорий при помощи путей доступа, следует обратиться к приложению С. Вопрос о смене директорий обсуждается в приложении В.)



1.3.1. Главное меню системы Турбо-Пролог
Главное меню Турбо-Пролога высвечивает 7 доступных пользователю опций (команд) в верхней части экрана. Первая буква названия каждой из команд выделена при помощи увеличенной яркости; на репродукциях книги это, к сожалению, не видно. Выделение имеет целью напоминать, что для задания команды достаточно нажать лишь первую букву ее названия.

Команды определяются 7 функциями Турбо-Пролога, каковыми являются

1. Запуск программы на счет (Run).

2. Трансляция программы (Compile).

3. Редактирование текста программы (Edit).

4. Заданий опций компилятора (Options).

5. Работа с файлами (Files).

6. Настройка системы в соответствии с индивидуальными потребностями (Setup).

7. Выход из системы (Quit).
Переход от одной команды к другой прост и удобен.

Существует два способа задания команд. Первый требует нажатия клавиши, соответствующей первой букве названия выбранной команды. Так, для выбора команды Edit необходимо нажать E. (Нет никакой разницы, какая буква была введена - большая или маленькая, т. е. использование Shift не обязательно.) Для окончания работы с командой используется клавиша Esc. Второй способ состоит в перемещении по меню при помощи стрелок и <-; переход к работе с выбранной командой осуществляется нажатием Enter.

Главное меню содержит четыре окна. В левом верхнем углу располагается окно редактора Турбо-Пролога (Editor), в правом верхнем углу - окно диалога (Dialog), в левом нижнем - окно сообщений (Message), в правом нижнем - окно трассировки (Trace). Если вы используете цветной монитор, то по умолчанию для окна редактора задается голубой цвет, для окна диалога - красный и черный - для окон сообщений и трассировки.

Верхняя строка окна редактора содержит информацию о высвечиваемом в этом окне файле. Line 1 и Col 1 свидетельствуют о том, что курсор в настоящий момент располагается в первой позиции первой строки. Значения этих индикаторов строки и позиции меняются вслед за изменением положения курсора. Надпись Indent сигнализирует о том, что включен режим автоматического строк, а надпись Insert - о том, что задан режим вставки. WORK.PRO является заданным по умолчанию именем рабочего файла; .PRO есть заданное по умолчанию расширение для файлов, содержащих программы на Турбо-Прологе. Если вы набьете в редакторе какой-либо текст и запишите его на диск без изменения имени файла, то файл с вашим текстом получит имя WORK.PRO.


1.3.2. Запуск на счет программы, написанной на Турбо-Прологе
Программа, работу с которой мы сейчас начинаем, имеет целью дать необходимые навыки в использовании меню системы и основных команд редактора. Программа называется WELCOME.PRO.

Действия, которые следует предпринять, чтобы создать эту программу, не зависят от того, работаете ли вы на машине с винчестерским диском, или на машине с двумя дисководами для гибких дисков.

Перейдите при помощи стрелки к команде главного меню Edit и нажмите клавишу Enter (либо просто введите латинскую букву E).При этом в левом верхнем углу окна Editor появится мерцающая черточка - курсор редактора. Теперь редактор Турбо-Пролога готов принять вводимый вами с клавиатуры текст.

Набейте текст программы WELCOME.PRO:


predicates

hello


goal

hello.
clauses

hello :-

write("Welcome to Turbo Prolog!"),

nl.
Когда вы доходите до конца очередной строки, нажимайте клавишу Enter для перехода на следующую. Для удаления неверного символа нужно прибегнуть к помощи клавиши BackSpace. Не нужно, конечно, добиваться точного совпадения картинок, в частности, количества пробелов в каждой строке. Выравнивание строк в Турбо-Прологе, так же как и в других языках, преследует цель придания программе несколько большей наглядности и не влияет на ее выполнение.
1.3.3. "Добро пожаловать в систему Турбо-Пролог!"
Вы ввели в компьютер вашу первую программу на Турбо-Прологе. Для того чтобы запустить ее на счет, сначала требуется покинуть редактор системы; для этого нужно нажать клавишу Esc. Курсор редактора при этом исчезнет, а курсор главного меню станет указывать на команду Edit. Задайте теперь команду Run и пронаблюдайте за двумя появившимися во время трансляции программы строками в окне сообщений Message и за результатом работы программы в окне диалога Dialog.

Первая строка в окне сообщений указывает на то, что началась трансляция программы WELCOME.PRO. Трансляция задается автоматически при задании команды Run, т. е. нет необходимости прибегать к помощи специальной команды - Compile.

Турбо-Пролог позволяет адресовать результат трансляции либо на диск, либо в оперативную память. При задании Run программа транслируется в оперативную память. Транслировать программу на диск пока вы лишь учитесь работать на Турбо-Прологе, нет необходимости. Но в дальнейшем вы можете создавать и объектные файлы для совместного редактирования с другими объектыми модулями, и выполнимые файлы, которые можно запускать на счет вне среды Турбо-Пролога. В этом вам поможет материал приложения В настоящей книги.

Как вы, вероятно, заметили, Турбо-Пролог транслируют столь малую программу очень и очень быстро, за какие-то доли секунды.

Вторая строка в окне сообщений сигнализирует о трансляции предиката hello.
1.3.4. Сохранение программного файла
Для того, чтобы записать на диск программу и таким образом сохранить ее, необходимо выйти из редактора (если вы находитесь в режиме редактирования), нажав клавишу Esc, а затем выбрать команду Files и подкоманду Save во вновь появившемся меню (либо нажав S, либо используя стрелки и клавишу Enter). В результате этих действий на экране возникнет небольшое окно, в котором будет высвечено либо заданное по умолчанию имя файла (как, например, WORK.PRO), либо то имя, которое вы присвоили файлу сами. Имя файла можно оставить без изменений, а можно и отредактировать. В нашем случае следует ввести имя WELCOME.PRO, а затем нажать Enter.

Если на диске уже есть файл с указанным именем (более ранняя версия редактируемой программы или какая-либо иная программа), то в результате операции записи на диск расширение имени этого файла будет сменено на .BAK, чтобы пометить старый вариант файла. Не забывайте сохранять отредактированный файл перед тем, как окончить сеанс работы с Турбо-Прологом. В противном случае модифицированный вариант программы будет утерян.

Достаточно частое сохранение рабочего файла на диск очень полезно. В случае отказа электропитания, или программ ного сбоя компьютера вы всегда будете иметь достаточно "свежий" вариант программы. Некоторые программисты записывают очередные версии программы под разными именами. Генерация таких многочисленных "поколений" программных файлов может также быть полезной, так как позволяет проследить все этапы развития программы.
1.3.5. Просмотр каталога директории
Для того чтобы просмотреть каталог файлов какой-либо директории, необходимо выбрать в главном меню команду Files и подкоманду Directory в появившемся меню команды. На экране возникнет окно, в котором перечисляются все файлы текущей директории .PRO. Если вы хотите увидеть каталог другой директории, то следует ввести путь доступа к этой директории, а затем нажать клавишу Enter. В ответ система попросит задать маску интересующих вас файлов (File mask). По умолчанию стоит маска *.PRO. (О том, что означает символ * , или столь же часто употребляемый при задании масок символ ? можно узнать, прочитав приложение С.) Можно оставить эту маску, а можно ввести и свою. После того, как вы нажмете Enter, в окне появятся имена всех файлов заданной директории, удовлетворяющие заданной маске.
1.3.6. Загрузка и редактирование программного файла
Турбо-Пролог обладает очень мощным экранным редактором, оснащенным большим количеством средств, облегчающих работу программиста. В этом состоит важное отличие Турбо-Пролога от других реализаций Пролога: некоторые из них вообще не обладают встроенными редакторами и приходится выходить из них каждый раз, как только возникает необходимость внести в программу хоть малейшее изменение.

Большинство команд редактора Турбо-Пролога совпадают с командами редактора WordStar. Если вы знакомы с WordStar, или с другими похожими редакторами, такими, например, как редактор Турбо-Паскаля, то будет несложно обучиться и командам Турбо-Пролога. В приложении А вопросы использования редактора Турбо-Пролога изложены достаточно подробно. Поэтому советуем прочитать это приложение, перед тем как составлять на Турбо-Прологе достаточно большие программы.

Для того чтобы загрузить в окно редактора уже существующий файл, требуется выбрать команду Files главного меню и подкоманду Load в меню Files. Если в ответ на запрос имени файла просто нажать клавишу Enter, то на экране в специальном окне будет высвечен перечень файлов директории .PRO. Теперь, используя четыре стрелки можно добраться до имени интересующего вас файла, и после этого нажать клавишу Enter. Если же вы решили набрать имя файла с клавиатуры, нет необходимости указывать его расширение, так как по умолчанию считается, что файл имеет расширение .PRO.

Работая с редактором Турбо-Пролога, можно в любой момент получить информацию о любой из его команд; для этого нужно нажать функциональную клавишу F1. На экране появляется небольшое меню подсказки Help. Если вы выберете первую опцию из предлагаемого списка, то на экране возникнет окно Help. Окно демонстрирует краткий перечень команд редактора и другую полезную информацию о редакторе. Нажав комбинацию Shift-F10, можно расширить это окно до размеров полного экрана; повторное нажатие Shift-F10 вернет окно к его первоначальным габаритам (эта операцию можно проделать с любым из окон системы). Другие опции подсказки позволяют получить несколько более специфическую информацию об определенных группах команд.

Если вам требуется создать новый программный файл, а в окне редактора уже находится какой-либо другой, то возникает необходимость очистить окно от этого файла. Чтобы проделать это, необходимо задать команду главного меню Files, а в нем подкоманду Zap file in editor. Система запросит подтверждения. Если нажать Y, то окно очистится от текста. Вслед за этим возникнет маленькое окошко, предназначенное для ввода имени нового файла. Введите новое имя, если таковое требуется, и нажмите Enter. Если никакое имя введено не будет, то новый файл будет именоваться старым именем. После нажатия Enter окошко исчезнет, а курсор главного меню будет указывать на Files. Теперь его можно сместить к Edit и нажать Enter, после чего приступить к набивке новой программы.
1.3.7. Печать файла
Подкоманда Print команды Files может быть использована для печати файла, находящегося в окне редактора. Как обычно, сначала нужно задать в главном меню команду Files, а во вновь появившемся меню - подкоманду Print. Состояние экрана в тот момент, когда начинается печать файла, отражает. Не следует использовать подкоманду Print, если к компьютеру не подключен принтер.
1.4. Заключение
В настоящей главе, весьма небольшой по размеру, были описаны основные характеристики Турбо-Пролога, а также приведены инструкции по установке системы. На примере ввода и запуска на счет короткой и очень простой по структуре программы вы познакомились с основами работы в Турбо-Прологе. В главе было также приведено достаточно подробное описание меню системы, которое постоянно используется на протяжении всей работы над программой.

Информация, представленная в настоящей главе, так же как, впрочем, и в некоторых других частях книги, рассчитана не столько на чтение и запоминание, сколько на использование ее в качестве руководства в процессе работы с системой.



следующая страница >>
Смотрите также:
Using Turbo Prolog Для чего нужен Турбо-Пролог?
4158.81kb.
16 стр.
Лабораторная работа №1 Знакомство со средой программирования Turbo Pascal
92.02kb.
1 стр.
1. Интерактивный отладчик Visual Studio. Для чего нужен? Как включить режим отладки? Как отличается отладка в режимах Release и Debug и как можно возможности отладки расширить
29.87kb.
1 стр.
Что такое isdn и для чего он нужен?
26.66kb.
1 стр.
Так что же такое профсоюз
441.95kb.
3 стр.
Наталья Радулова: Для чего нам нужен муж 26 октября 2007, 11: 40
44.62kb.
1 стр.
Закон и права человека глава Что такое закон и для чего он нужен У. Голдинг Повелитель мух
768.84kb.
4 стр.
Руководство по составлению Бизнес-плана Введение. Для чего нужен Бизнес-план предприятия?
380.35kb.
1 стр.
Для чего нужен компьютер детям
23.2kb.
1 стр.
Нужен ли буренке собственный комбикормовый завод. За последнее время на деловых сайтах зачастили объявления типа «Нужен комбикорм в Москве?»
37.35kb.
1 стр.
Безвизовые страны
33.77kb.
1 стр.
Двигатель: 4395 см 3, V8 Bi-Turbo
40.22kb.
1 стр.