Annotated Ada Reference Manual (Ada 202y Draft 1)Legal Information
Contents   Index   References   Search   Previous   Next 

1.3.3 Other Syntactic Constructs

1/5
aggregate

construct used to define a value of a composite type by specifying the values of the components of the type
2/5
compilation unit

program unit that is separately compiled
3/5
Note: A compilation_unit contains either the declaration, the body, or a renaming of a program unit.
4/5
construct

piece of text (explicit or implicit) that is an instance of a syntactic category defined under Syntax
5/5
container

structured object that represents a collection of elements all of the same (potentially class-wide) type, such as a vector or a tree
6/5
Note: Several predefined container types are provided by the children of package Ada.Containers (see A.18.1).
7/5
container aggregate

construct used to define a value of a type that represents a collection of elements, by explicitly specifying the elements in the collection
8/5
core language

clause or annex in which are defined language constructs or capabilities that are provided by all conforming implementations
9/5
Note: A construct is said to be part of the core language if it is defined in a core language clause or annex.
10/5
declaration

language construct that associates a name with (a view of) an entity
11/5
Note: A declaration can appear explicitly in the program text (an explicit declaration), or can be supposed to occur at a given place in the text as a consequence of the semantics of another construct (an implicit declaration).
12/5
generic instance

nongeneric unit created by the instantiation of a generic unit
13/5
generic unit

template for a (nongeneric) program unit
14/5
Note 1: The template can be parameterized by objects, types, subprograms, and packages.
15/5
Note 2: Generic units can be used to perform the role that macros sometimes play in other languages.
16/5
iterator

construct that is used to loop over the elements of an array or container
17/5
Note: Iterators can be user defined, and can perform arbitrary computations to access elements from a container.
18/5
iterator filter

construct that is used to restrict the elements produced by an iteration to those for which a boolean condition evaluates to True
19/5
library unit

separately compiled program unit, which is a package, a subprogram, or a generic unit
20/5
Note: Library units can have other (logically nested) library units as children, and can have other program units physically nested within them. A root library unit, together with its children and grandchildren and so on, form a subsystem.
21/5
master construct

one of certain executable constructs for which there can be objects or tasks whose lifetime ends when the construct completes
22/5
Note: Execution of a master construct is a master, with which objects and tasks are associated for the purposes of waiting and finalization.
23/5
needed compilation unit

compilation unit that is necessary to produce an executable partition, because some entity declared or defined within the unit is used elsewhere in the partition
24/5
package

program unit that defines the interface to a group of logically related entities, along with their implementation
25/5
Note: Typically, a package contains the declaration of a type (often a private type or private extension) along with the declarations of primitive subprograms of the type, which can be called from outside the package, while their inner workings remain hidden from outside users.
26/5
parallel construct

executable construct that defines multiple activities of a single task that can proceed in parallel, via the execution of multiple logical threads of control
27/5
partition

part of a program, which consists of a set of interdependent library units
28/5
Note: Each partition can run in a separate address space, possibly on a separate computer. A program can contain just one partition, or it can be distributed across multiple partitions, which can execute concurrently.
29/5
pragma

compiler directive to provide control over and above that provided by the other syntactic constructs of the language
30/5
Note: There are language-defined pragmas that give instructions for optimization, listing control, etc. An implementation can support additional (implementation-defined) pragmas.
31/5
program

set of partitions, each of which can execute in a separate address space, possibly on a separate computer
32/5
program unit

language construct that is a package, a task unit, a protected unit, a protected entry, a generic unit, or an explicitly declared subprogram other than an enumeration literal
33/5
Note: Certain kinds of program units can be separately compiled. Alternatively, they can appear physically nested within other program units.
34/5
reduction expression

expression that defines how to map or transform a collection of values into a new set of values, and then summarize the values by applying an operation to reduce the set to a single value
35/5
renaming

declaration that does not define a new entity, but instead defines a new view of an existing entity
36/5
specialized needs annex

annex in which are defined language constructs or capabilities that are not necessarily provided by all conforming implementations
37/5
subunit

body of a program unit that can be compiled separately from its enclosing program unit

Contents   Index   References   Search   Previous   Next 
Ada-Europe Ada 2005 and 2012 Editions sponsored in part by Ada-Europe