๐”– Scriptorium
โœฆ   LIBER   โœฆ

๐Ÿ“

Consolidated Ada Reference Manual: Language and Standard Libraries (Lecture Notes in Computer Science, 2219)

โœ Scribed by Tucker S. Taft (editor), Robert A. Duff (editor), Randall L. Brukardt (editor), Erhard Ploedereder (editor)


Publisher
Springer
Year
2001
Tongue
English
Leaves
570
Category
Library

โฌ‡  Acquire This Volume

No coin nor oath required. For personal study only.

โœฆ Synopsis


ISO (the International Organization for Standardization) and IEC (the International Electrotechnical 1 Commission) form the specialized system for worldwide standardization. National bodies that are members of ISO or IEC participate in the development of International Standards through technical committees established by the respective organization to deal with particular fields of technical activity. ISO and IEC technical committees collaborate in fields of mutual interest. Other international organizations, governmental and non-governmental, in liaison with ISO and IEC, also take part in the work. 2 In the field of information technology, ISO and IEC have established a joint technical committee, ISO/IEC JTC 1. Draft International Standards adopted by the joint technical committee are circulated to national bodies for voting. Publication as an International Standard requires approval by at least 75 % of the national bodies casting a vote. International Standard ISO/IEC 8652 was prepared by Joint Technical Committee ISO/IEC JTC 1, 3 Information Technology. This second edition cancels and replaces the first edition (ISO 8652:1987), of which it constitutes a 4 technical revision. Annexes A to J form an integral part of this International Standard. Annexes K to P are for information 5 only. xi 15 June 2001 Foreword ISO/IEC 8652:1995(E) with COR.1:2000 โ€• Ada Reference Manual Introduction 1 This is the Ada Reference Manual.

โœฆ Table of Contents


Lecture Notes in Computer Science
Springer
Consolidated Ada Reference Manual
Ada Reference Manual
Ada Reference Manual - Language and Standard Libraries
Technical Corrigendum 1
Foreword to this version of the Ada Reference Manual
Using this version of the Ada Reference Manual
Acknowledgements for this version of the Ada Reference Manual
Foreword
Introduction
Language Summary
Language Changes
Instructions for Comment Submission
Acknowledgements
Changes
Ada Reference Manual
Ada Reference Manual - Language and Standard Libraries
Technical Corrigendum 1
Table of Contents
Table of Contents.
Foreword to this version of the Ada Reference Manual
Foreword
Introduction
Section 1: General.
Section 2: Lexical Elements
Section 3: Declarations and Types
Section 4: Names and Expressions
Section 5: Statements
Section 6: Subprograms
Section 7: Packages
Section 8: Visibility Rules
Section 9: Tasks and Synchronization
Section 10: Program Structure and Compilation Issues
Section 11: Exceptions
Section 12: Generic Units
Section 13: Representation Issues
The Standard Libraries
Annex A (normative) Predefined Language Environment
Annex B (normative) Interface to Other Languages
Annex C (normative) Systems Programming.
Annex D (normative) Real-Time Systems
Annex E (normative) Distributed Systems
Annex F (normative) Information Systems
Annex G (normative) Numerics
Annex H (normative) Safety and Security
Annex J (normative) Obsolescent Features
Annex K (informative) Language-Defined Attributes
Annex L (informative) Language-Defined Pragmas
Annex M (informative) Implementation-Defined Characteristics
Annex N (informative) Glossary
Annex P (informative) Syntax Summary
Information technology โ€” Programming Languages โ€” Ada
Section 1: General
1.1 Scope
1.1.1 Extent
1.1.2 Structure
1.1.3 Conformity of an Implementation with the Standard
1.1.4 Method of Description and Syntax Notation
1.1.5 Classification of Errors
1.2 Normative References
1.3 Definitions
Section 2: Lexical Elements
2.1 Character Set
2.2 Lexical Elements, Separators, and Delimiters
2.3 Identifiers
2.4 Numeric Literals
2.4.1 Decimal Literals
2.4.2 Based Literals
2.5 Character Literals
2.6 String Literals
2.7 Comments
2.8 Pragmas
2.9 Reserved Words
Section 3: Declarations and Types
3.1 Declarations
3.2 Types and Subtypes
3.2.1 Type Declarations
3.2.2 Subtype Declarations
3.2.3 Classification of Operations
3.3 Objects and Named Numbers
3.3.1 Object Declarations
3.3.2 Number Declarations
3.4 Derived Types and Classes
3.4.1 Derivation Classes
3.5 Scalar Types
3.5.1 Enumeration Types
3.5.2 Character Types
3.5.3 Boolean Types
3.5.4 Integer Types
3.5.5 Operations of Discrete Types
3.5.6 Real Types
3.5.7 Floating Point Types
3.5.8 Operations of Floating Point Types
3.5.9 Fixed Point Types
3.5.10 Operations of Fixed Point Types
3.6 Array Types
3.6.1 Index Constraints and Discrete Ranges
3.6.2 Operations of Array Types
3.6.3 String Types
3.7 Discriminants
3.7.1 Discriminant Constraints
3.7.2 Operations of Discriminated Types
3.8 Record Types
3.8.1 Variant Parts and Discrete Choices
3.9 Tagged Types and Type Extensions
3.9.1 Type Extensions
3.9.2 Dispatching Operations of Tagged Types
3.9.3 Abstract Types and Subprograms
3.10 Access Types
3.10.1 Incomplete Type Declarations
3.10.2 Operations of Access Types
3.11 Declarative Parts
3.11.1 Completions of Declarations
Section 4: Names and Expressions
4.1 Names
4.1.1 Indexed Components
4.1.2 Slices
4.1.3 Selected Components
4.1.4 Attributes
4.2 Literals
4.3 Aggregates
4.3.1 Record Aggregates
4.3.2 Extension Aggregates
4.3.3 Array Aggregates
4.4 Expressions
4.5 Operators and Expression Evaluation
4.5.1 Logical Operators and Short-circuit Control Forms
4.5.2 Relational Operators and Membership Tests
4.5.3 Binary Adding Operators
4.5.4 Unary Adding Operators
4.5.5 Multiplying Operators
4.5.6 Highest Precedence Operators
4.6 Type Conversions
4.7 Qualified Expressions
4.8 Allocators
4.9 Static Expressions and Static Subtypes
4.9.1 Statically Matching Constraints and Subtypes
Section 5: Statements
5.1 Simple and Compound Statements - Sequences of Statements
5.2 Assignment Statements
5.3 If Statements
5.4 Case Statements
5.5 Loop Statements
5.6 Block Statements
5.7 Exit Statements
5.8 Goto Statements
Section 6: Subprograms
6.1 Subprogram Declarations
6.2 Formal Parameter Modes
6.3 Subprogram Bodies
6.3.1 Conformance Rules
6.3.2 Inline Expansion of Subprograms
6.4 Subprogram Calls
6.4.1 Parameter Associations
6.5 Return Statements
6.6 Overloading of Operators
Section 7: Packages
7.1 Package Specifications and Declarations
7.2 Package Bodies
7.3 Private Types and Private Extensions
7.3.1 Private Operations
7.4 Deferred Constants
7.5 Limited Types
7.6 User-Defined Assignment and Finalization
7.6.1 Completion and Finalization
Section 8: Visibility Rules
8.1 Declarative Region
8.2 Scope of Declarations
8.3 Visibility
8.4 Use Clauses
8.5 Renaming Declarations
8.5.1 Object Renaming Declarations
8.5.2 Exception Renaming Declarations
8.5.3 Package Renaming Declarations
8.5.4 Subprogram Renaming Declarations
8.5.5 Generic Renaming Declarations
8.6 The Context of Overload Resolution
Section 9: Tasks and Synchronization
9.1 Task Units and Task Objects
9.2 Task Execution - Task Activation
9.3 Task Dependence - Termination of Tasks
9.4 Protected Units and Protected Objects
9.5 Intertask Communication
9.5.1 Protected Subprograms and Protected Actions
9.5.2 Entries and Accept Statements
9.5.3 Entry Calls
9.5.4 Requeue Statements
9.6 Delay Statements, Duration, and Time
9.7 Select Statements
9.7.1 Selective Accept
9.7.2 Timed Entry Calls
9.7.3 Conditional Entry Calls
9.7.4 Asynchronous Transfer of Control
9.8 Abort of a Task - Abort of a Sequence of Statements
9.9 Task and Entry Attributes
9.10 Shared Variables
9.11 Example of Tasking and Synchronization
Section 10: Program Structure and Compilation Issues
10.1 Separate Compilation
10.1.1 Compilation Units - Library Units
10.1.2 Context Clauses - With Clauses
10.1.3 Subunits of Compilation Units
10.1.4 The Compilation Process
10.1.5 Pragmas and Program Units
10.1.6 Environment-Level Visibility Rules
10.2 Program Execution
10.2.1 Elaboration Control
Section 11: Exceptions
11.1 Exception Declarations
11.2 Exception Handlers
11.3 Raise Statements
11.4 Exception Handling
11.4.1 The Package Exceptions
11.4.2 Example of Exception Handling
11.5 Suppressing Checks
11.6 Exceptions and Optimization
Section 12: Generic Units
12.1 Generic Declarations
12.2 Generic Bodies
12.3 Generic Instantiation
12.4 Formal Objects
12.5 Formal Types
12.5.1 Formal Private and Derived Types
12.5.2 Formal Scalar Types
12.5.3 Formal Array Types
12.5.4 Formal Access Types
12.6 Formal Subprograms
12.7 Formal Packages
12.8 Example of a Generic Package
Section 13: Representation Issues
13.1 Operational and Representation Items
13.2 Pragma Pack
13.3 Operational and Representation Attributes
13.4 Enumeration Representation Clauses
13.5 Record Layout
13.5.1 Record Representation Clauses
13.5.2 Storage Place Attributes
13.5.3 Bit Ordering
13.6 Change of Representation
13.7 The Package System
13.7.1 The Package System.Storage_Elements
13.7.2 The Package System.Address_To_Access_Conversions
13.8 Machine Code Insertions
13.9 Unchecked Type Conversions
13.9.1 Data Validity
13.9.2 The Valid Attribute
13.10 Unchecked Access Value Creation
13.11 Storage Management
13.11.1 The Max_Size_In_Storage_Elements Attribute
13.11.2 Unchecked Storage Deallocation
13.11.3 Pragma Controlled
13.12 Pragma Restrictions
13.13 Streams
13.13.1 The Package Streams
13.13.2 Stream-Oriented Attributes
13.14 Freezing Rules
Annex A (normative) Predefined Language Environment
A.1 The Package Standard
A.2 The Package Ada
A.3 Character Handling
A.3.1 The Package Characters
A.3.2 The Package Characters.Handling
A.3.3 The Package Characters.Latin_1
A.4 String Handling
A.4.1 The Package Strings
A.4.2 The Package Strings.Maps
A.4.3 Fixed-Length String Handling
A.4.4 Bounded-Length String Handling
A.4.5 Unbounded-Length String Handling
A.4.6 String-Handling Sets and Mappings
A.4.7 Wide_String Handling
A.5 The Numerics Packages
A.5.1 Elementary Functions
A.5.2 Random Number Generation
A.5.3 Attributes of Floating Point Types
A.5.4 Attributes of Fixed Point Types
A.6 Input-Output
A.7 External Files and File Objects
A.8 Sequential and Direct Files
A.8.1 The Generic Package Sequential_IO
A.8.2 File Management
A.8.3 Sequential Input-Output Operations
A.8.4 The Generic Package Direct_IO
A.8.5 Direct Input-Output Operations
A.9 The Generic Package Storage_IO
A.10 Text Input-Output
A.10.1 The Package Text_IO
A.10.2 Text File Management
A.10.3 Default Input, Output, and Error Files
A.10.4 Specification of Line and Page Lengths
A.10.5 Operations on Columns, Lines, and Pages
A.10.6 Get and Put Procedures
A.10.7 Input-Output of Characters and Strings
A.10.8 Input-Output for Integer Types
A.10.9 Input-Output for Real Types
A.10.10 Input-Output for Enumeration Types
A.11 Wide Text Input-Output
A.12 Stream Input-Output
A.12.1 The Package Streams.Stream_IO
A.12.2 The Package Text_IO.Text_Streams
A.12.3 The Package Wide_Text_IO.Text_Streams
A.13 Exceptions in Input-Output
A.14 File Sharing
A.15 The Package Command_Line
Annex B (normative) Interface to Other Languages
B.1 Interfacing Pragmas
B.2 The Package Interfaces
B.3 Interfacing with C
B.3.1 The Package Interfaces.C.Strings
B.3.2 The Generic Package Interfaces.C.Pointers
B.4 Interfacing with COBOL
B.5 Interfacing with Fortran
Annex C (normative) Systems Programming
C.1 Access to Machine Operations
C.2 Required Representation Support
C.3 Interrupt Support
C.3.1 Protected Procedure Handlers
C.3.2 The Package Interrupts
C.4 Preelaboration Requirements
C.5 Pragma Discard_Names
C.6 Shared Variable Control
C.7 Task Identification and Attributes
C.7.1 The Package Task_Identification
C.7.2 The Package Task_Attributes
Annex D (normative) Real-Time Systems
D.1 Task Priorities
D.2 Priority Scheduling
D.2.1 The Task Dispatching Model
D.2.2 The Standard Task Dispatching Policy
D.3 Priority Ceiling Locking
D.4 Entry Queuing Policies
D.5 Dynamic Priorities
D.6 Preemptive Abort
D.7 Tasking Restrictions
D.8 Monotonic Time
D.9 Delay Accuracy
D.10 Synchronous Task Control
D.11 Asynchronous Task Control
D.12 Other Optimizations and Determinism Rules
Annex E (normative) Distributed Systems
E.1 Partitions
E.2 Categorization of Library Units
E.2.1 Shared Passive Library Units
E.2.2 Remote Types Library Units
E.2.3 Remote Call Interface Library Units
E.3 Consistency of a Distributed System
E.4 Remote Subprogram Calls
E.4.1 Pragma Asynchronous
E.4.2 Example of Use of a Remote Access-to-Class-Wide Type
E.5 Partition Communication Subsystem
Annex F (normative) Information Systems
F.1 Machine_Radix Attribute Definition Clause
F.2 The Package Decimal
F.3 Edited Output for Decimal Types
F.3.1 Picture String Formation
F.3.2 Edited Output Generation
F.3.3 The Package Text_IO.Editing
F.3.4 The Package Wide_Text_IO.Editing
Annex G (normative) Numerics
G.1 Complex Arithmetic
G.1.1 Complex Types
G.1.2 Complex Elementary Functions
G.1.3 Complex Input-Output
G.1.4 The Package Wide_Text_IO.Complex_IO
G.2 Numeric Performance Requirements
G.2.1 Model of Floating Point Arithmetic
G.2.2 Model-Oriented Attributes of Floating Point Types
G.2.3 Model of Fixed Point Arithmetic
G.2.4 Accuracy Requirements for the Elementary Functions
G.2.5 Performance Requirements for Random Number Generation
G.2.6 Accuracy Requirements for Complex Arithmetic
Annex H (normative) Safety and Security
H.1 Pragma Normalize_Scalars
H.2 Documentation of Implementation Decisions
H.3 Reviewable Object Code
H.3.1 Pragma Reviewable
H.3.2 Pragma Inspection_Point
H.4 Safety and Security Restrictions
Annex J (normative) Obsolescent Features
J.1 Renamings of Ada 83 Library Units
J.2 Allowed Replacements of Characters
J.3 Reduced Accuracy Subtypes
J.4 The Constrained Attribute
J.5 ASCII
J.6 Numeric_Error
J.7 At Clauses
J.7.1 Interrupt Entries
J.8 Mod Clauses
J.9 The Storage_Size Attribute
Annex K (informative) Language-Defined Attributes
Annex L (informative) Language-Defined Pragmas
Annex M (informative) Implementation-Defined Characteristics
Annex N (informative) Glossary
Annex P (informative) Syntax Summary
Index


๐Ÿ“œ SIMILAR VOLUMES


Ada 95 Reference Manual: Language and St
โœ S. Tucker Taft, Robert A. Duff (eds.) ๐Ÿ“‚ Library ๐Ÿ“… 1995 ๐Ÿ› Springer-Verlag Berlin Heidelberg ๐ŸŒ English

<p>This Ada 95 Reference Manual is essentially identical to the new International Standard ISO/IEC 8652:1995(E) for the Ada programming language. The thorough technical revisions and extensions documented in this manual are built on broad participation from the international Ada community and genero

Ada 95 Reference Manual: Language and St
โœ S. Tucker Taft, Robert A. Duff (eds.) ๐Ÿ“‚ Library ๐Ÿ“… 1995 ๐Ÿ› Springer-Verlag Berlin Heidelberg ๐ŸŒ English

<p>This Ada 95 Reference Manual is essentially identical to the new International Standard ISO/IEC 8652:1995(E) for the Ada programming language. The thorough technical revisions and extensions documented in this manual are built on broad participation from the international Ada community and genero

Consolidated Ada Reference Manual Langua
โœ S. Tucker Taft, Robert A. Duff, Randall L. Brukardt, Erhard Ploedereder (eds.) ๐Ÿ“‚ Library ๐Ÿ“… 2001 ๐Ÿ› Springer-Verlag Berlin Heidelberg ๐ŸŒ English

<p>ISO (the International Organization for Standardization) and IEC (the International Electrotechnical 1 Commission) form the specialized system for worldwide standardization. National bodies that are members of ISO or IEC participate in the development of International Standards through technical

Ada 2012 Reference Manual. Language and
โœ S. Tucker Taft, Robert A. Duff (auth.), S. Tucker Taft, Robert A. Duff, Randall ๐Ÿ“‚ Library ๐Ÿ“… 2013 ๐Ÿ› Springer-Verlag Berlin Heidelberg ๐ŸŒ English

The Ada 2012 Reference Manual is an enhanced version of the text of International Standard ISO/IEC 8652/2012(E) for the programming language Ada. The Ada 2012 Reference Manual combines all of the previous corrections of Technical Corrigendum 1 and Amendment 1 with changes and additions that improve

Coordination Models and Languages (Lectu
โœ Maurice H. ter Beek (editor), Marjan Sirjani (editor) ๐Ÿ“‚ Library ๐Ÿ“… 2022 ๐Ÿ› Springer ๐ŸŒ English

<p><span>This book constitutes the refereed proceedings of the 24th IFIP WG 6.1 International Conference on Coordination Models and Language, COORDINATION 2022, held in Lucca, Italy, in June 2022, as part of the 17th International Federated Conference on Distributed Computing Techniques, DisCoTec 20