Contents Index Previous Next
A.2 The Package Ada
Static Semantics
1
The following language-defined
library package exists:
2
package Ada is
pragma Pure(Ada);
end Ada;
3
Ada serves as the parent of most of the other
language-defined library units; its declaration is empty (except for
the pragma Pure).
Legality Rules
4
In the standard mode, it is illegal to compile
a child of package Ada.
4.a
Reason: The intention is
that mentioning, say, Ada.Text_IO in a with_clause
is guaranteed (at least in the standard mode) to refer to the standard
version of Ada.Text_IO. The user can compile a root library unit Text_IO
that has no relation to the standard version of Text_IO.
4.b
Ramification: Note that
Ada can have non-language-defined grandchildren, assuming the implementation
allows it. Also, packages System and Interfaces can have children, assuming
the implementation allows it.
4.c
Implementation Note: An
implementation will typically support a nonstandard mode in which compiling
the language defined library units is allowed. Whether or not this mode
is made available to users is up to the implementer.
4.d
An implementation could theoretically
have private children of Ada, since that would be semantically neutral.
However, a programmer cannot compile such a library unit.
Extensions to Ada 83
4.e
{extensions to Ada 83}
This clause is new to Ada 95.
Contents Index Previous Next Legal