Spec-Zone.ru › Ada 2005
Справочник по Ada 2005

Приложение N

(информативное)

Глоссарий

Это приложение содержит неформальные описания некоторых терминов, используемых в этом международном стандарте. Индекс содержит ссылки на более формальные определения всех терминов, используемых в этом международном стандарте.
Абстрактный тип. Абстрактный тип — это помеченный тип, предназначенный для использования в качестве предка других типов, но не допускающий создания собственных объектов.
Тип доступа. Тип доступа имеет значения, обозначающие объекты с ссылкой. Типы доступа соответствуют «типам указателей» или «типам ссылок» в некоторых других языках.
С ссылкой. Вид объекта со ссылкой — это вид, который может быть обозначен значением доступа. Объекты, выделенные средствами выделения, имеют ссылку. Объекты также могут быть явно объявлены как имеющие ссылку с помощью ключевого слова aliased. Атрибут Access можно использовать для создания значения доступа, обозначающего объект со ссылкой.
Предок. Предком типа является сам тип или, в случае типа, полученного из других типов, его родительский тип или один из его предковых типов или один из их предков. Обратите внимание, что предковый и дочерний типы являются обратными отношениями.
Тип массива. Тип массива — это составной тип, чьи компоненты имеют один и тот же тип. Компоненты выбираются по индексу.
Категория (типов). Категория типов — это набор типов с одним или несколькими общими свойствами, такими как базовые операции. Категория типов, замкнутая по отношению к наследованию, также известна как класс.
Тип символов. Тип символов — это тип перечисления, значения которого включают символы.
Класс (типов). Класс — это набор типов, замкнутый относительно наследования, что означает, что если данный тип принадлежит классу, то все типы, полученные от этого типа, также принадлежат этому классу. Типы класса обладают общими свойствами, такими как их базовые операции.
Единица компиляции. Текст программы может быть передан компилятору в одном или нескольких компиляциях. Каждая компиляция является последовательностью единиц_компиляции. Единица компиляции содержит либо объявление, либо тело, либо переименование программной единицы.
Составной тип. Составной тип может иметь компоненты.
Конструкт. Конструкт — это фрагмент текста (явный или неявный), который является экземпляром синтаксической категории, определенной в разделе «Синтаксис».
Управляемый тип. Управляемый тип поддерживает пользовательское присваивание и финализацию. Объекты всегда финализируются перед уничтожением.
Объявление. Объявление — это конструкция языка, которая связывает имя с (видом) сущностью. Объявление может быть явно указано в тексте программы (явное объявление) или предполагаться в данном месте текста в силу семантики другой конструкции (неявное объявление).
Этот абзац был удален.
Производный тип. Производный тип определяется через один или несколько других типов, указанных в определении производного типа. Первый из этих типов является родительским типом производного типа, а остальные — предковыми типами. Каждый класс, содержащий родительский тип или предковый тип, также содержит производный тип. Производный тип наследует свойства, такие как компоненты и базовые операции, от родительского и предковых типов. Тип вместе с типами, полученными от него (прямо или косвенно), образуют класс наследования.
Потомок. Тип является потомком самого себя, своих родительских и предковых типов, а также их предков. Обратите внимание, что предковый и дочерний типы являются обратными отношениями.
Дискретный тип. Дискретный тип — это либо целочисленный тип, либо тип перечисления. Дискретные типы могут использоваться, например, в case_statement и в качестве индексов массивов.
Дискриминант. Дискриминант — это параметр составного типа. Он может, например, управлять границами компонента типа, если компонент является массивом. Дискриминант для типа задачи может использоваться для передачи данных задаче типа при создании.
Развертывание. Процесс, посредством которого объявление достигает своего эффекта во время выполнения, называется развертыванием. Развертывание является одной из форм выполнения.
Элементарный тип. Элементарный тип не имеет компонентов.
Тип перечисления. Тип перечисления определяется перечислением его значений, которые могут быть названы идентификаторами или символами.
Вычисление. Процесс, посредством которого выражение достигает своего эффекта во время выполнения, называется вычислением. Вычисление — это одна из форм выполнения.
Исключение. Исключение представляет собой вид исключительной ситуации; возникновение такой ситуации (во время выполнения) называется возникновением исключения. Вызвать исключение означает прервать нормальное выполнение программы, чтобы привлечь внимание к возникновению соответствующей ситуации. Выполнение некоторых действий в ответ на возникновение исключения называется обработкой исключения.
Выполнение. Процесс, посредством которого конструкция достигает своего эффекта во время выполнения, называется выполнением. Выполнение объявления также называется развертыванием. Выполнение выражения также называется вычислением.
Функция. Функция — это форма подпрограммы, которая возвращает результат и может быть вызвана в качестве части выражения.
Обобщенная единица. Обобщенная единица — это шаблон для (необобщенной) программной единицы; шаблон может быть параметризован объектами, типами, подпрограммами и пакетами. Экземпляр обобщенной единицы создается с помощью generic_instantiation. Правила языка применяются при компиляции обобщенной единицы, используя модель обобщенного контракта; дополнительные проверки выполняются при создании экземпляра для проверки выполнения контракта. То есть объявление обобщенной единицы представляет собой контракт между телом обобщенной единицы и экземплярами обобщенной единицы. Обобщенные единицы могут использоваться для выполнения той роли, которую иногда играют макросы в других языках.
Неполный тип. Неполный тип предоставляет представление типа, раскрывающее только некоторые его свойства. Остальные свойства предоставляются полным представлением в другом месте. Неполные типы могут использоваться для определения рекурсивных структур данных.
Целочисленный тип. Целочисленные типы включают знакомые целочисленные типы и модульные типы. Знаковый целочисленный тип имеет базовый диапазон, который включает как положительные, так и отрицательные числа, и имеет операции, которые могут вызвать исключение, когда результат выходит за пределы базового диапазона. Модульный тип имеет базовый диапазон, нижняя граница которого равна нулю, и имеет операции с семантикой «переполнения». Модульные типы включают в себя то, что в некоторых других языках называется «беззнаковыми типами».
Тип интерфейса. Тип интерфейса является формой абстрактного помеченного типа, который не имеет компонентов или конкретных операций, кроме, возможно, пустых процедур. Типы интерфейса используются для комбинирования других интерфейсов и помеченных типов и таким образом обеспечивают множественное наследование. Только тип интерфейса может использоваться в качестве предка другого типа.
Единица библиотеки. Единица библиотеки — это отдельно компилируемая программная единица и всегда является пакетом, подпрограммой или обобщенной единицей. Единицы библиотеки могут иметь другие (логически вложенные) единицы библиотеки как дочерние элементы и могут иметь другие программные единицы, физически вложенные в них. Корневая единица библиотеки вместе со своими дочерними и внучатыми и так далее элементами образуют подсистему.
Ограниченный тип. Ограниченный тип — это тип, для которого копирование (например, в assignment_statement) не допускается. Неограниченный тип — это тип, для которого копирование разрешено.
Объект. Объект — это либо константа, либо переменная. Объект содержит значение. Объект создается с помощью object_declaration или с помощью allocator. Формальный параметр является (видом) объекта. Подкомпонент объекта — это объект.
Переопределяемая операция. Переопределяемая операция — это операция, которая заменяет унаследованную базовую операцию. Операции могут быть явно помечены как переопределяемые или не переопределяемые.
Пакет. Пакеты — это программные единицы, которые позволяют указывать группы логически связанных сущностей. Обычно пакет содержит объявление типа (часто закрытый тип или закрытое расширение) вместе с объявлениями базовых подпрограмм типа, которые могут вызываться извне пакета, в то время как их внутренняя работа остается скрытой от внешних пользователей.
Родительский тип. Родительским типом производного типа является первый тип, указанный в определении производного типа. Родительским типом может быть практически любой тип, включая тип интерфейса.
Раздел. Раздел — это часть программы. Каждый раздел состоит из набора единиц библиотеки. Каждый раздел может выполняться в отдельном адресном пространстве, возможно, на отдельном компьютере. Программа может содержать только один раздел. Распределенная программа обычно содержит несколько разделов, которые могут выполняться параллельно.
Предикат. Предикат — это директива компилятора. Существуют определенные в языке предикаты, которые предоставляют инструкции для оптимизации, управления списками и т. д. Реализация может поддерживать дополнительные (определяемые реализацией) предикаты.
END_OF_DOCUMENT_MARKER
Примитивные операции. Примитивные операции типа — это операции (например, подпрограммы), объявленные вместе с объявлением типа. Они наследуются другими типами в том же классе типов. Для помеченного типа примитивные подпрограммы являются подпрограммами диспетчеризации, обеспечивающими полиморфизм во время выполнения. Подпрограмму диспетчеризации можно вызвать со статически помеченными операндами, в этом случае тело подпрограммы, вызываемой, определяется во время компиляции. В качестве альтернативы, подпрограмму диспетчеризации можно вызвать с помощью вызова диспетчеризации, в этом случае тело подпрограммы, вызываемой, определяется во время выполнения.
Частное расширение. Частное расширение — это тип, который расширяет другой тип, с дополнительными свойствами, скрытыми от его клиентов.
Частный тип. Частный тип предоставляет представление о типе, раскрывающем только некоторые его свойства. Остальные свойства предоставляются полным представлением, указанным в другом месте. Частные типы могут использоваться для определения абстракций, скрывающих ненужные детали от своих клиентов.
Процедура. Процедура — это форма подпрограммы, которая не возвращает результат и может вызываться только оператором.
Предшественник. Предшественник производного типа — один из типов, указанных в определении производного типа, кроме первого. Предшественник всегда является интерфейсным типом. Интерфейсы, задачи и защищённые типы также могут иметь предшественников.
Программа. Программа — это набор разделов, каждый из которых может выполняться в отдельном адресном пространстве, возможно, на отдельном компьютере. Раздел состоит из набора блоков библиотек.
Блок программы. Блок программы — это либо пакет, блок задачи, защищённый блок, защищённый вход, обобщённый блок или явно объявленная подпрограмма, отличная от литерала перечисления. Некоторые виды блоков программ могут быть скомпилированы отдельно. В качестве альтернативы, они могут физически встраиваться в другие блоки программ.
Защищённый тип. Защищённый тип — это составной тип, компоненты которого доступны только через одну из его защищённых операций, которые синхронизируют одновременный доступ нескольких задач.
Тип вещественного числа. Тип вещественного числа имеет значения, которые являются приближениями вещественных чисел. Типы с плавающей запятой и фиксированной запятой являются вещественными типами.
Расширение записи. Расширение записи — это тип, который расширяет другой тип, добавляя дополнительные компоненты.
Тип записи. Тип записи — это составной тип, состоящий из нуля или более именованных компонентов, возможно, разных типов.
Переименование. объявление_переименования — это объявление, которое не определяет новую сущность, а вместо этого определяет представление существующей сущности.
Скалярный тип. Скалярный тип — это либо дискретный тип, либо вещественный тип.
Подпрограмма. Подпрограмма — это часть программы, которая может выполняться в различных контекстах. Она вызывается вызовом подпрограммы, который может квалифицировать эффект подпрограммы путём передачи параметров. Существуют две формы подпрограмм: функции, которые возвращают значения, и процедуры, которые не возвращают.
Подтип. Подтип — это тип вместе с ограничением или исключением нулевого значения, которое ограничивает значения подтипа, чтобы они удовлетворяли определённому условию. Значения подтипа являются подмножеством значений его типа.
Синхронизированный. Синхронизированная сущность — это сущность, которая будет безопасно работать с несколькими задачами одновременно. Синхронизированный интерфейс может быть предком задачи или защищенного типа. Такая задача или защищённый тип называется синхронизированным помеченным типом.
Помеченный тип. Объекты помеченного типа имеют метку типа во время выполнения, которая указывает конкретный тип, с которым объект был первоначально создан. Операнд широкого типа помеченного класса может использоваться в вызове диспетчеризации; метка указывает, какое тело подпрограммы нужно вызвать. Также разрешены вызовы, не требующие диспетчеризации, в которых тело подпрограммы, которую нужно вызвать, определяется во время компиляции. Помеченные типы могут быть расширены дополнительными компонентами.
Тип задачи. Тип задачи — это составной тип, используемый для представления активных сущностей, которые выполняются параллельно и которые могут взаимодействовать через очереди входов задачи. Верхняя задача раздела называется задачей окружения.
Тип. Каждый объект имеет тип. Тип имеет связанный набор значений и набор примитивных операций, которые реализуют основные аспекты его семантики. Типы сгруппированы в категории. Большинство определённых языком категорий типов также являются классами типов.
Представление. Представление сущности раскрывает некоторые или все свойства сущности. Одна сущность может иметь несколько представлений.


Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API