Документ взят из кэша поисковой машины. Адрес
оригинального документа
: http://www.cplire.ru/Lab144/koi8/02030143.html
Дата изменения: Mon Sep 24 15:06:49 2007 Дата индексирования: Tue Oct 2 03:28:39 2012 Кодировка: koi8-r Поисковые слова: crab nebula |
Пакет (package) - совокупность классов, связанных между собой по смыслу. В Акторном Прологе каждый пакет должен храниться в отдельном исходном файле, и каждый исходный файл программы считается отдельным пакетом. Каждый пакет обладает собственной областью видимости имен классов: имена классов, используемые внутри пакета, не видны из других пакетов до тех пор, пока не будут в них импортированы.
Параметр (parameter) - переменная или атрибут.
Передача сообщения (message passing) - последовательность действий, реализующая распространение информации из одного процесса в другие. В общем случае, передача сообщений из некоторого процесса может осуществляться каждый раз после завершения очередной фазы его исполнения.
Переключающие сообщения (switching messages) - разновидность сообщений, характеризуемая тем, что: 1) В результате обработки такого сообщения процесс может перейти в состояние "доказанный", "неудачный" или (остаться в состоянии) "сформированный". 2) Обработка переключающих сообщений осуществляется процессом независимо от того, в каком состоянии - "доказанный", "неудачный" или "сформированный" - он перед этим находился.
Перекрытие инициализаторов (overriding of initializers) - осуществляется в ходе построения слотов экземпляра класса во время исполнения простого конструктора экземпляра класса - замена инициализаторов слотов в определении атрибутов класса другими инициализаторами, заданными в конструкторе или в классах, являющихся потомками рассматриваемого.
Перекрытие описателей портов (overriding of declarators of ports) - осуществляется в ходе построения слотов экземпляра класса во время исполнения простого конструктора экземпляра класса - замена описателей портов в определении атрибутов класса другими описателями портов, заданными в конструкторе или в классах, являющихся потомками рассматриваемого. Перекрытие описателей портов происходит независимо от перекрытия инициализаторов слотов.
Переменная (variable) - разновидность лексемы - имя, начинающееся с большой буквы или символа подчеркивания.
Пересмотр списка задержанных подцелей (revision of list of suspended values) - один из этапов исполнения предложения - включает следующие действия: 1) Элементы списка задержанных подцелей просматриваются в том порядке, в котором они были в него добавлены. 2) При обнаружении каждого элемента списка, значение целевого параметра которого не является задерживающим, найденная подцель исключается из рассматриваемого списка и исполняется.
Повторное доказательство актора (repeated proving of actor) - повторение доказательства актора с самого начала.
Поглощение сообщения (absorption of message) - отмена сообщения, произошедшая вследствие неудачного или аварийного завершения его обработки. В случае поглощения сообщения, состояние процесса, обрабатывающего это сообщение, восстанавливается на момент, предшествовавший обработке этого сообщения.
Подключение процесса (connection of process) - перевод процесса в состояние "используемый".
Подцель доказательства (subgoal of proving) - подцель копии предложения, построенной в ходе исполнения некоторого вызова предиката.
Подцель предложения (subgoal of clause) - составная часть предложения - вызов предиката, исполнение которого осуществляется в ходе исполнения предложения.
Порт (port) - переменная процесса, которая может принадлежать акторам других процессов. В ходе исполнения программы каждому порту процесса ставятся в соответствие сорт, состояние, актор-представитель, а также текущее значение, сорт текущего значения, производитель текущего значения.
Построение процесса (generation of process) - Построение процесса происходит в результате доказательства конструктора процесса, однако при этом доказательство конструктора процесса не приводит к построению пространства поиска созданного процесса. Построение соответствующего пространства поиска и слотов процесса осуществляется позже, в ходе формирования процесса.
Построение резидента (generation of resident) - Построение резидента происходит в результате доказательства конструктора резидента. Построение резидента включает следующие действия: 1) Переменная, созданная в качестве начального значения слота процесса-владельца, инициализатором которого является конструктор резидента, объявляется защищающим портом резидента. 2) Все остальные общие переменные, заданные в составе конструктора резидента, объявляются простыми портами резидента. 3) Новый резидент начинает функционировать.
Построение слота (generation of slot) - операция создания слота. Одновременно с созданием каждого слота, если для этого слота задан инициализатор, создается начальное значение слота. Все слоты, не получившие значения в ходе своего создания, получают в качестве начальных значений уникальные общие переменные.
Построение экземпляра класса (generation of class instance) - создание нового экземпляра класса; включает формирование экземпляра класса, а также доказательство предиката goal() во всех мирах, сформированных на этапе формирования экземпляра класса. В ходе построения экземпляра класса каждая автоматически исполняемая подцель goal объявляется новым актором.
Потоковое сообщение (flow message) - сообщение, реализующее передачу производных значений общих переменных из одного процесса в другие. Потоковые сообщения передаются и принимаются через порты процессов.
Правило (rule) - то же что "предложение".
Правило второго порядка (second order rule) - логическая формула, в которой переменными могут быть обозначены не только данные, но и предикаты. В Акторном Прологе правила второго порядка имитируются с помощью недоопределенных множеств и метапредложений.
Предикат (predicate) - синтаксическая конструкция, состоящая из предикатного символа (функтора) и последовательности (возможно, пустой) аргументов. Предикат может обозначать некоторую подпрограмму или набор подпрограмм (если речь идет о предикате с переменным числом аргументов).
Предикатный символ (predicate symbol) - функтор, используемый в качестве имени предиката.
Предикат с переменным числом аргументов (variable arity predicate) - то же что "предикат переменной арности" - предикат, последним аргументом которого является переменная, помеченная ограничителем "*". В общем случае, предикат с переменным числом аргументов обозначает некоторый набор подпрограмм, имеющих одинаковую структуру, но различную арность заголовков.
Предложение (clause) - одна из составных частей определения класса - логическое правило, состоящее из заголовка и последовательности (возможно, пустой) подцелей.
Предопределенный предикат (predefined predicate) - предикат, являющийся составной частью определения языка и обозначающий некоторую подпрограмму, не требующую определения в тексте программы, обладающую декларативной семантикой. Предопределенными предикатами называются (являются) предикаты '=='(V1,...,Vk), ':='(V1,...,Vk), true[(...)], fail.
Принадлежать актору (belong to actor) - см. "использование переменной актором".
Принадлежать процессу (belong to process) - Считается, что некоторый актор "принадлежит" процессу G, если этот актор доказывается, доказан или должен быть доказан в мире, входящем в состав процесса G.
Проверка вхождения (occurence check) - проверка, осуществляемая в ходе унификации, предотвращающая (запрещающая) связывание переменной с составными термами, содержащими эту переменную. В соответствии с семантикой Акторного Пролога, проверка вхождения не распространяется на переменные в составе миров, являющихся компонентами унифицируемых термов.
Программа (program) - множество определений классов и определение проекта.
Программная библиотека (program library) - файл, в котором хранятся оттранслированные программные модули.
Программный модуль (program unit) - то же что "исходный файл".
Проект (project) - целевое утверждение программы - некоторый конструктор процесса.
Производитель глобального значения (producer of global value) - процесс, построивший текущее глобальное значение общей переменной.
Производитель значения порта (producer of value of port) - процесс, построивший текущее значение порта.
Производитель потокового сообщения (producer of flow message) - процесс, из которого передано потоковое сообщение.
Производное значение общей переменной процесса (derived value of common variable of process) - значение, которое можно получить (если оно существует), унифицировав локальные значения общей переменной, соответствующие всем активным и доказанным акторам процесса. В случае если общая переменная процесса (например, некоторый порт процесса) не соответствует ни одному из активных или доказанных акторов, ее производным значением считается анонимная переменная "_".
Простой атом (simple atom) - простейшая разновидность атомарной формулы - функтор с соответствующим количеством аргументов, недоопределенное множество или метапеременная.
Простой вызов предиката (simple call of predicate) - Простыми вызовами предикатов называются (являются) все вызовы, про которые не сказано, что они являются акторными.
Простой конструктор (simple constructor) - элементарное логическое утверждение о существовании экземпляра класса.
Простой порт (plain port) - порт процесса, который не является ни отключающим, ни защищающим.
Простой терм (simple term) - элементарная синтаксическая конструкция, обозначающая данные и миры. Простыми термами являются константы (символ, целое число, вещественное число, строковый литерал, спейсер #, метапеременная, обозначающая терм в метапредложении), а также параметры.
Процедура (procedure) - набор предложений класса (не являющихся метапредложениями) с одинаковыми предикатными символами атомарных формул заголовков (совпадают как имя, так и арность функторов).
Процесс (process) - экземпляр класса, предложения которого исполняются параллельно по отношению к предложениям других процессов. В языке используется только асинхронное взаимодействие между процессами, поэтому предикаты каждого процесса обладают декларативной семантикой, не зависящей от других процессов.
Прямое сообщение (direct message) - сообщение, реализующее исполнение дальнего вызова предиката из одного процесса в другом.
Пустое значение (empty value) - анонимная переменная "_" (используемая в качестве значения пустого сообщения).
Пустое сообщение (empty message) - специальная разновидность переключающих потоковых сообщений. Значение пустого сообщения равно анонимной переменной "_".
ПРИЛОЖЕНИЕ 3. ТЕРМИНЫ И ОПРЕДЕЛЕНИЯ
КОРНЕВАЯ СТРАНИЦА
ОГЛАВЛЕНИЕ
СПИСОК ПОНЯТИЙ ЯЗЫКА (ИНДЕКС)