| |
| |
| |
| An Overview | |
| |
| |
| |
| Introduction | |
| |
| |
| History | |
| |
| |
| Software Engineering | |
| |
| |
| Evolution and Abstraction | |
| |
| |
| From Ada 83 to Ada 95 | |
| |
| |
| Structure and Objectives of This Book | |
| |
| |
| References | |
| |
| |
| |
| Simple Concepts | |
| |
| |
| Key Goals | |
| |
| |
| Overall Structure | |
| |
| |
| Errors and Exceptions | |
| |
| |
| The Scalar Type Model | |
| |
| |
| Arrays and Records | |
| |
| |
| Access Types | |
| |
| |
| Terminology | |
| |
| |
| |
| Abstraction | |
| |
| |
| Packages and Private Types | |
| |
| |
| Objects and Inheritance | |
| |
| |
| Classes and Polymorphism | |
| |
| |
| Genericity | |
| |
| |
| Object-Oriented Terminology | |
| |
| |
| Tasking | |
| |
| |
| |
| Programs and Libraries | |
| |
| |
| The Hierarchical Library | |
| |
| |
| Input-Output | |
| |
| |
| Numeric Library | |
| |
| |
| Running a Program | |
| |
| |
| |
| Algorithmic Aspects | |
| |
| |
| |
| Lexical Style | |
| |
| |
| Syntax Notation | |
| |
| |
| Lexical Elements | |
| |
| |
| Identifiers | |
| |
| |
| Numbers | |
| |
| |
| Comments | |
| |
| |
| |
| Scalar Types | |
| |
| |
| Object Declarations and Assignments | |
| |
| |
| Blocks and Scopes | |
| |
| |
| Types | |
| |
| |
| Subtypes | |
| |
| |
| Simple Numeric Types | |
| |
| |
| Enumeration Types | |
| |
| |
| The Boolean Type | |
| |
| |
| Type Classification | |
| |
| |
| Expression Summary | |
| |
| |
| |
| Control Structures | |
| |
| |
| If Statements | |
| |
| |
| Case Statements | |
| |
| |
| Loop Statements | |
| |
| |
| Goto Statements and Labels | |
| |
| |
| Statement Classification | |
| |
| |
| |
| Arrays and Records | |
| |
| |
| Arrays | |
| |
| |
| Array Types | |
| |
| |
| Array Aggregates | |
| |
| |
| Characters and Strings | |
| |
| |
| Arrays of Arrays and Slices | |
| |
| |
| One-Dimensional Array Operations | |
| |
| |
| Records | |
| |
| |
| |
| Subprograms | |
| |
| |
| Functions | |
| |
| |
| Operators | |
| |
| |
| Procedures | |
| |
| |
| Named and Default Parameters | |
| |
| |
| Overloading | |
| |
| |
| Declarations, Scopes and Visibility | |
| |
| |
| |
| Access Types | |
| |
| |
| Flexibility Versus Integrity | |
| |
| |
| Pool Specific Access Types | |
| |
| |
| Access Types and Constraints | |
| |
| |
| General Access Types | |
| |
| |
| Accessibility | |
| |
| |
| Access Parameters | |
| |
| |
| Access to Subprograms | |
| |
| |
| |
| The Big Pictures | |
| |
| |
| |
| Packages and Private Types | |
| |
| |
| Packages | |
| |
| |
| Private Types | |
| |
| |
| Primitive Operations and Derived Types | |
| |
| |
| Equality | |
| |
| |
| Limited Types | |
| |
| |
| Resource Management | |
| |
| |
| |
| Overall Structure | |
| |
| |
| Library Units | |
| |
| |
| Subunits | |
| |
| |
| Child Library Units | |
| |
| |
| Private Child Units | |
| |
| |
| Scope, Visibility and Accessibility | |
| |
| |
| Renaming | |
| |
| |
| Programs, Partitions, and Elaboration | |
| |
| |
| |
| Object-Oriented Programming | |
| |
| |
| Type Extension | |
| |
| |
| Polymorphism | |
| |
| |
| Abstract Types and Subprograms | |
| |
| |
| Operations and Dispatching | |
| |
| |
| Views and Redispatching | |
| |
| |
| Private Types and Extensions | |
| |
| |
| Controlled Types | |
| |
| |
| Multiple Implementations | |
| |
| |
| |
| Exceptions | |
| |
| |
| Handling Exceptions | |
| |
| |
| Declaring and Raising Exceptions | |
| |
| |
| Checking and Exceptions | |
| |
| |
| Exception Occurrences | |
| |
| |
| Scope of Exceptions | |
| |
| |
| |
| Numeric Types | |
| |
| |
| Signed Integer Types | |
| |
| |
| Modular Types | |
| |
| |
| Real Types | |
| |
| |
| Floating Point Types | |
| |
| |
| Fixed Point Types | |
| |
| |
| Decimal Types | |
| |
| |
| |
| Parameterized Types | |
| |
| |
| Discriminated Record Types | |
| |
| |
| Default Discriminants | |
| |
| |
| Variant Parts | |
| |
| |
| Discriminants and Derived Types | |
| |
| |
| Access Types and Discriminants | |
| |
| |
| Private Types and Discriminants | |
| |
| |
| Access Discriminants | |
| |
| |
| |
| Generics | |
| |
| |
| Declarations and Instantiations | |
| |
| |
| Type Parameters | |
| |
| |
| Subprogram Parameters | |
| |
| |
| Package Parameters | |
| |
| |
| Generic Library Units | |
| |
| |
| |
| Tasking | |
| |
| |
| Parallelism | |
| |
| |
| The Rendezvous | |
| |
| |
| Timing and Scheduling | |
| |
| |
| Protected Objects | |
| |
| |
| Simple Select Statements | |
| |
| |
| Timed and Conditional Calls | |
| |
| |
| Concurrent Types and Activation | |
| |
| |
| Termination, Exceptions and ATC | |
| |
| |
| Signaling and Scheduling | |
| |
| |
| Examples of Tasks | |
| |
| |
| |
| Object-Oriented Techniques | |
| |
| |
| Inheritance and Composition | |
| |
| |
| Mixin Inheritance | |
| |
| |
| Containers | |
| |
| |
| Iterators | |
| |
| |
| Numerical Applications | |
| |
| |
| Multiple Views | |
| |
| |
| Concurrency and Objects | |
| |
| |
| Controlling Abstraction | |
| |
| |
| |
| Completing the Story | |
| |
| |
| |
| Predefined Library | |
| |
| |
| The Package Standard | |
| |
| |
| Character and String Handling | |
| |
| |
| Numerics | |
| |
| |
| Input and Output | |
| |
| |
| Text Input-Output | |
| |
| |
| Streams | |
| |
| |
| Other Facilities | |
| |
| |
| |
| Interfacing | |
| |
| |
| Representations | |
| |
| |
| Unchecked Programming | |
| |
| |
| The Package System | |
| |
| |
| Other Languages | |
| |
| |
| |
| The Specialized Annexes | |
| |
| |
| Systems Programming | |
| |
| |
| Real-Time Systems | |
| |
| |
| Distributed Systems | |
| |
| |
| Information Systems | |
| |
| |
| Numerics | |
| |
| |
| Safety and Security | |
| |
| |
| |
| Finale | |
| |
| |
| Names and Expressions | |
| |
| |
| Type Equivalence | |
| |
| |
| Overall Program Structure | |
| |
| |
| Visibility and Composition | |
| |
| |
| Portability | |
| |
| |
| Program Design | |
| |
| |
| Appendices | |
| |
| |
| Reserved Words, Attributes and Programs | |
| |
| |
| Glossary | |
| |
| |
| Syntax | |
| |
| |
| Answers to Exercises | |
| |
| |
| Bibliography | |
| |
| |
| Index | |
| |
| |
| Index to Examples. 0201877007T04062001 | |