Part 2 - The Ada library and language annexes.

You have now covered all of the Ada language itself. Part two of this book will introduce you to Ada95's standard library and how the features found therein can be used to enhance the portability, maintainability and safety of your Ada applications.

Ada uses its facility for creating hierarchical libraries in the definition of its own library. Three root packages have been defined Standard, Ada and System. Below these three a number of packages provide generic and flexible yet remarkably comprehensive facilities for character and string handling, numeric computation, input output, system programming and management of library issues such as storage management and task control.

The following diagram illustrates the hierarchy of the Ada95 library, most packages are part of the core library, though some (in italics) are defined as part of the language annexes.

Ada
    Asynchronous_Task_Control
    Calendar
    Characters
        Handling
        Latin_1
    Command_Line
    Decimal
    Direct_IO
    Dynamic_Priorities
    Exceptions
    Finalization
    Interrupts
        Names
    IO_Exceptions
    Numerics
        Complex_Elementry_Functions
        Complex_Types
        Discrete_Random
        Elementry_Functions
        Float_Random
        Generic_Complex_Elementry_Functions
        Generic_Complex_Types
        Generic_Elementry_Functions
    Real_Time
    Sequential_IO
    Storage_IO
    Streams
        Stream_IO
    Strings
    Bounded
    Fixed
    Maps
        Constants
    Unbounded
    Wide_Bounded
    Wide_Fixed
    Wide_Maps
        Wide_Constants
    Wide_Unbounded
    Synchronous_Task_Control
    Tags
    Task_Attributes
    Task_Identification
    Text_IO
        Complex_IO
        Editing
        Text_Streams
    Unchecked_Conversion
    Unchecked_Deallocation
    Wide_Text_IO
        Complex_IO
        Editing
        Text_Streams
Interfaces
    C
        Pointers
    Strings
    COBOL
    Fortran
System
    Address_To_Access_Conversions
    Machine_Code
    RPC
    Storage_Elements
    Storage_Pools

As we have said before there are seven annexes to the language, these are:

The first annex, interfaces to other programming languages, is required of all Ada implementations. The other "specialised needs annexes", are optional which means that compilers may achieve validation without them.


Previous PageContents PageNext Page

Copyright © 1996 Simon Johnston &
Addison Wesley Longman