logo search
TurboProlog / Документация / TOM_1

О Прологе

Пролог появился на свет в результате многолетней

исследовательской работы. Первая официальная версия Пролога была

разработана (в начале 1970-х годов Элаином Колмерауером из

Марсельского университета) в качестве удобного средства

ПРОграммирования с помощью ЛОГики. Это средство является гораздо

более мощным и эффективным нежели чем другие широко известные

языки программирования, такие как Паскаль и Бейсик. Например, для

заданного приложения программа на Прологе требует только одну

десятую часть программных строк по сравнению с аналогичной

программой на Паскале.

Сегодня Пролог является важнейшим средством для

программирования приложений по искусственному интелекту и для

разработки экспертных систем. Другая же причина растущей

популярности Пролога заключается в гораздо большей

"дружественности" и "интеллигентности" прологовских программ.

Программа на Прологе задает компьютеру, используя для этого

некоторое число правил и фактов, описание проблемы, а затем

просит его найти все возможные решения этой проблемы. В

процедурных языках программист должен точно "рассказать"

компьютеру, как тот должен решать задачи. На Прологе же

программист лишь описывает что нужно вычислить, а Пролог-система

сама заботится о том, как организовать эти вычисления.

Из-за такого декларативного (а не процедурного) подхода всем

известные источники ошибок в Паскале и Бейсике (такие как циклы,

выполняющие на единицу меньше или на единицу больше, чем нужно

операций) исключаются с самого начала. А кроме того, Пролог учит

программистов делать хорошо структуризованное описание задачи и

может, таким образом, со временем, быть использован как средство

задания спецификаций.

Хотя Пролог делает программирование намного проще, он

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

это первая реализация Пролога для персональных компьютеров IBM PC

и совместимых с ними по мощности и памяти.

Турбо Пролог обеспечивает больше возможностей, чем многие

реализации на больших компьютерах. Например:

# Новая мощнейшая система внешних баз данных, включающая более

30 предикатов для разработки и ведения больших баз данных,

поддерживающих B+-деревья и расширенную память типа EMS.

Система внешних баз данных позволяет выполнять "сцепление"

баз данных, поддерживает (для быстрой сортировки и доступа к

данным) индексные ссылки типа B+дерева и предоставляет средства

для создания и копирования баз данных между ОЗУ, EMS и жестким

диском.

# Исходные тексты для обладающего всеми возможностями

интерпретатора Пролога.

В последнее время программисты хотят знать, как добавляются

и обрабатываются предложения в Турбо Прологе. С помощью Турбо

Пролога 2.0 мы объясняем, как в процессе работы добавляются и

интерпретируются правила; для этого включены файлы PIE.* -

интерпретатор, написанный на Турбо Прологе и обладающий всеми

возможностями Пролога. Этот интерпретатор, подробно

рассказывающий, как он написан и объясняющий, как его расширить

для ваших собственных программ, явялется мощнейшим средством для

изучения того, как работает сам Пролог, и как вы можете добавить

множество возможностей в свои программы. Вы можете изменять этот

интерпретатор с тем, чтобы создать свой собственный логический

язык программирования, механизм вывода, оболочки экспертных

систем или программные интерфейсы.

# Стандарт графического интерфейса фирмы Borland.

Теперь Турбо Пролог поддерживает ту же мощную графическую

систему, что и в текущих версиях Турбо Паскаля и Турбо Си. 60

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

коуровневые графические средства с профессиональным качеством вы-

вода на экран.

Кроме всех этих новых возможностей Турбо Пролог 2.0 включает

несколько улучшенных возможностей из тех, что были в версиях 1.x,

например:

# Больше средств для управления окнами: в пакет версии 2.0 мы

включили целый набор программ, обеспечивающих управление окнами.

# Устанавливаемый пользователем интерфейс: пользовательский

интерфейс теперь польностью перенастраиваемый, включая "горячие"

клавиши, функции редактора, режимы экрана и т.д.

# Улучшенный компилятор: Компилятор Турбо Пролога оптимизиро-

ван и теперь версия 2.0 создает программы более эффективные и

меньшие по размеру, чем программы версии 1.1.

# Обработка исключительных состояний и контроль ошибок: теперь

Тубро Пролог включает мощный механизм для обработки ошибочных си-

туаций, а также для управления пользовательскими прерываниями

программы. Кроме этого включены различные уровни по контролю за

ошибками и по выдаче соответствующих сообщений.

# Множественные внутренние базы данных: вы можете теперь ис-

пользовать в своих программах несколько внутренних баз

данных;

они могут быть локальными в одном модуле или глобальными по отно-

шению ко всему приложению.

# Вызовы из других языков: Турбо Пролог может создавать

подпрограммы, вызываемые из других языков. Интерфейс вызова

является обобщенным и может работать со всеми

компиляторами,

генерирующими .OBJ модули. (Однако, мы можем лишь полностью

гарантировать, что он будет работать с Турбо Си версий 1.x).

Программисты на Турбо Си могут использовать огромную библиотеку

Турбо Пролога как мощнейший вспомогательный пакет программ;

причем теперь не нужен ни CPINIT, ни другие "приклеиваемые"

модули любых типов. Эти два языка могут свободно вызывать друг

друга. Высококлассные программисты могут извлечь массу

преимуществ, используя лучшие черты этих двух языков.

# Поддержка максимального видеоразрешения: в среде разработки

и в пользовательских программах Турбо Пролог 2.0 поддерживает

режимы в 25, 43 и 50 строк по 80, 90, 120 или 132 колонки

(обеспечивая корректную установку аппаратуры).

# Расширенный предикат редактирования: новый предикат edit,

включающий несколько расширений, позволяет программистам вызывать

из своих программ редактор, обладающий широким спектром

возможностей.

# Описание констант и условная компиляция: эти возможности

добавлены в язык.