Ada 95 Reference Manual

Language and Standard Libraries

This is a hypertext version of the revised international standard (ISO/IEC 8652:1995): Information Technology -- Programming Languages -- Ada. The entry point is the table of contents (TOC), with three "zoom levels."

Help | Credits | Copyright | Index | Search | Syntax

TOC level: clauses (--.--). Zoom to list sections (--) or subclauses (--.--.--).

Cover Page | Foreword | Introduction | Core Language | Annexes

Core Language

1. General -- TOC
  1. Scope -- TOC
  2. Normative References
  3. Definitions
2. Lexical Elements -- TOC
  1. Character Set
  2. Lexical Elements, Separators, and Delimiters
  3. Identifiers
  4. Numeric Literals -- TOC
  5. Character Literals
  6. String Literals
  7. Comments
  8. Pragmas
  9. Reserved Words
3. Declarations and Types -- TOC
  1. Declarations
  2. Types and Subtypes -- TOC
  3. Objects and Named Numbers -- TOC
  4. Derived Types and Classes -- TOC
  5. Scalar Types -- TOC
  6. Array Types -- TOC
  7. Discriminants -- TOC
  8. Record Types -- TOC
  9. Tagged Types and Type Extensions -- TOC
  10. Access Types -- TOC
  11. Declarative Parts -- TOC
4. Names and Expressions -- TOC
  1. Names -- TOC
  2. Literals
  3. Aggregates -- TOC
  4. Expressions
  5. Operators and Expression Evaluation -- TOC
  6. Type Conversions
  7. Qualified Expressions
  8. Allocators
  9. Static Expressions and Static Subtypes -- TOC
5. Statements -- TOC
  1. Simple and Compound Statements - Sequences of Statements
  2. Assignment Statements
  3. If Statements
  4. Case Statements
  5. Loop Statements
  6. Block Statements
  7. Exit Statements
  8. Goto Statements
6. Subprograms -- TOC
  1. Subprogram Declarations
  2. Formal Parameter Modes
  3. Subprogram Bodies -- TOC
  4. Subprogram Calls -- TOC
  5. Return Statements
  6. Overloading of Operators
7. Packages -- TOC
  1. Package Specifications and Declarations
  2. Package Bodies
  3. Private Types and Private Extensions -- TOC
  4. Deferred Constants
  5. Limited Types
  6. User-Defined Assignment and Finalization -- TOC
8. Visibility Rules -- TOC
  1. Declarative Region
  2. Scope of Declarations
  3. Visibility
  4. Use Clauses
  5. Renaming Declarations -- TOC
  6. The Context of Overload Resolution
9. Tasks and Synchronization -- TOC
  1. Task Units and Task Objects
  2. Task Execution - Task Activation
  3. Task Dependence - Termination of Tasks
  4. Protected Units and Protected Objects
  5. Intertask Communication -- TOC
  6. Delay Statements, Duration, and Time
  7. Select Statements -- TOC
  8. Abort of a Task - Abort of a Sequence of Statements
  9. Task and Entry Attributes
  10. Shared Variables
  11. Example of Tasking and Synchronization
10. Program Structure and Compilation Issues -- TOC
  1. Separate Compilation -- TOC
  2. Program Execution -- TOC
11. Exceptions -- TOC
  1. Exception Declarations
  2. Exception Handlers
  3. Raise Statements
  4. Exception Handling -- TOC
  5. Suppressing Checks
  6. Exceptions and Optimization
12. Generic Units -- TOC
  1. Generic Declarations
  2. Generic Bodies
  3. Generic Instantiation
  4. Formal Objects
  5. Formal Types -- TOC
  6. Formal Subprograms
  7. Formal Packages
  8. Example of a Generic Package
13. Representation Issues -- TOC
  1. Representation Items
  2. Pragma Pack
  3. Representation Attributes
  4. Enumeration Representation Clauses
  5. Record Layout -- TOC
  6. Change of Representation
  7. The Package System -- TOC
  8. Machine Code Insertions
  9. Unchecked Type Conversions -- TOC
  10. Unchecked Access Value Creation
  11. Storage Management -- TOC
  12. Pragma Restrictions
  13. Streams -- TOC
  14. Freezing Rules

Annexes

A. Predefined Language Environment -- TOC
  1. The Package Standard
  2. The Package Ada
  3. Character Handling -- TOC
  4. String Handling -- TOC
  5. The Numerics Packages -- TOC
  6. Input-Output
  7. External Files and File Objects
  8. Sequential and Direct Files -- TOC
  9. The Generic Package Storage_IO
  10. Text Input-Output -- TOC
  11. Wide Text Input-Output
  12. Stream Input-Output -- TOC
  13. Exceptions in Input-Output
  14. File Sharing
  15. The Package Command_Line

B. Interface to Other Languages -- TOC

  1. Interfacing Pragmas
  2. The Package Interfaces
  3. Interfacing with C -- TOC
  4. Interfacing with COBOL
  5. Interfacing with Fortran

C. Systems Programming -- TOC

  1. Access to Machine Operations
  2. Required Representation Support
  3. Interrupt Support -- TOC
  4. Preelaboration Requirements
  5. Pragma Discard_Names
  6. Shared Variable Control
  7. Task Identification and Attributes -- TOC

D. Real-Time Systems -- TOC

  1. Task Priorities
  2. Priority Scheduling -- TOC
  3. Priority Ceiling Locking
  4. Entry Queuing Policies
  5. Dynamic Priorities
  6. Preemptive Abort
  7. Tasking Restrictions
  8. Monotonic Time
  9. Delay Accuracy
  10. Synchronous Task Control
  11. Asynchronous Task Control
  12. Other Optimizations and Determinism Rules

E. Distributed Systems -- TOC

  1. Partitions
  2. Categorization of Library Units -- TOC
  3. Consistency of a Distributed System
  4. Remote Subprogram Calls -- TOC
  5. Partition Communication Subsystem

F. Information Systems -- TOC

  1. Machine_Radix Attribute Definition Clause
  2. The Package Decimal
  3. Edited Output for Decimal Types -- TOC

G. Numerics -- TOC

  1. Complex Arithmetic -- TOC
  2. Numeric Performance Requirements -- TOC

H. Safety and Security -- TOC

  1. Pragma Normalize_Scalars
  2. Documentation of Implementation Decisions
  3. Reviewable Object Code -- TOC
  4. Safety and Security Restrictions

J. Obsolescent Features -- TOC

  1. Renamings of Ada 83 Library Units
  2. Allowed Replacements of Characters
  3. Reduced Accuracy Subtypes
  4. The Constrained Attribute
  5. ASCII
  6. Numeric_Error
  7. At Clauses -- TOC
  8. Mod Clauses
  9. The Storage_Size Attribute

K. Language-Defined Attributes

L. Language-Defined Pragmas

M. Implementation-Defined Characteristics

N. Glossary

P. Syntax Summary


Help | Credits | Copyright | Index | Search | Syntax

TOC level: clauses (--.--). Zoom to list sections (--) or subclauses (--.--.--).

Ada WWW Home -- Email comments, additions, corrections, gripes, kudos, etc. to:

Magnus Kempe -- Magnus.Kempe@di.epfl.ch
Copyright statement
Page last generated: 95-03-12