Категория
Информатика
Тип
реферат
Страницы
5 стр.
Дата
23.04.2009
Формат файла
.doc — Microsoft Word
Архив
19509.zip — 13.46 kb
  • ispolzovanie-prolog-sovmestno-s-drugimi-jap_19509_1.doc — 57.5 Kb
  • Readme_docus.me.txt — 125 Bytes
Оцените работу
Хорошо  или  Плохо


Текст работы

Использование Prolog совместно с другими ЯП.
Понятие Dll.
Вспомним процесс программирования в DOS. Преобразование исходного текста в машинный код включал в себя 2 процесса: компиляцию и линковку. Во время линковки в код программы помещались не только объявления функций и процедур, но и их полный код.
В многозадачной среде подобный подход был бы весьма расточителен, так как огромное количество функций, отвечающих за прорисовку элементов пользовательского интерфейса, за обращение к системным ресурсам и т.п. дублировались в каждой программе. В качестве решения возникшей проблемы была предложена концепция динамической компоновки (см. рис. 1).
рис 1.
DLL (библиотека динамической связи) – файл, выступающий в качестве коллективной библиотеки предикатов, которые могут быть использованы одновременно в нескольких приложениях. Prolog способен генерировать DLL, включать DLL статически и загружать динамически.
Вызов в программе на VP процедур и функций на других языках.
Прежде чем вызвать процедуры и функции на других языках их нужно объявить как внешний предикат, упомянув, что он осуществляется на другом языке. При этом необходимо знать количество и порядок входных параметров:
GLOBAL PREDICATES
procedure add(integer A, integer B, integer C) – (i,i,o) language pascal
Замечание: обратите внимание, что в VP явно указывается язык процедурыПередача входных/выходных параметров и возвращение значений.
Размер входных параметров определен однозначно и зависит только от объявленного типа. Выходной параметр – 32 битный указатель на область памяти, где хранится выходное значение.
Следует отметить, что функции на Pascal не могут возвращать значения в формате чисел с плавающей точкой, а функции C - структуры (но могут, конечно,



Ваше мнение



CAPTCHA