Provides complete coverage of the Ada language and Ada programming in general by recognized authorities in Ada software engineering. Demonstrates the power and performance of Ada in the management of large-scale object-oriented systems, and shows how to use Ada features such as generics, packages, and tasking.
Ada 95 is the first fully object-oriented programming language to be internationally standardized. John Barnes was a key member of the language's design team, and this is a new edition of his definitive text and reference for the Ada 95 language.
Discover the Ada programming language by being gently guided through the various parts of the language and its latest available stable release. The goal in this book is to slowly ease you into the different topics. It is understood that you do not always have ample free time, so the text is easy to digest and concepts are spoon fed to the reader. Starting with the simplest of topics, detailed explanations demonstrate the how and why of Ada. You are strongly encouraged to experiment and break things (without which the learning process is linear and quite dull). At the end of Beginning Ada Programming, you will have an excellent understanding of the general topics that make up the Ada programming language and can tackle far more challenging topics. Each chapter builds on what was previously described. Furthermore, each code example is independent of others and will run all by itself. Instructions are provided where you can obtain an Ada compiler and how to debug your code. What You Will Learn Master basic types, control structures, procedures, and functions in AdaUse Ada arrays, records, and access typesImplement OO programming using AdaHandle the basics of I/O and interfacing with the operating systemTake advantage of string operators, data containers, multiprocessing with tasks, and moreWork with contracts and proofs, networks, and various Ada libraries Who This Book Is For Programmers who are new to Ada, with at least some experience in programming, especially scientific programming.
The arrival and popularity of multi-core processors has sparked a renewed interest in the development of parallel programs. Similarly, the availability of low-cost microprocessors and sensors has generated a great interest in embedded real-time programs. This book provides students and programmers whose backgrounds are in traditional sequential programming with the opportunity to expand their capabilities into parallel, embedded, real-time and distributed computing. It also addresses the theoretical foundation of real-time scheduling analysis, focusing on theory that is useful for actual applications. Written by award-winning educators at a level suitable for undergraduates and beginning graduate students, this book is the first truly entry-level textbook in the subject. Complete examples allow readers to understand the context in which a new concept is used, and enable them to build and run the examples, make changes, and observe the results.
The latest edition of the definitive guide to the Ada language covers the full details of the core language Ada 2012 as updated by the 2016 ISO Corrigendum and introduces the key new features in Ada 2022. The book is in four parts. It begins by introducing the fundamental concepts for newcomers, before moving onto algorithmic aspects and then structural features such as OOP and multitasking. The fourth part gives details of the standard library and interaction with the external environment. Six complete executable programs illustrate the core features of the language in action. The book concludes with an appendix focussing on the new features in Ada 2022. These new features aid program proof and the efficient use of multicore architectures.
After completing this self-contained course on server-based Internet applications software that grew out of an MIT course, students who start with only the knowledge of how to write and debug a computer program will have learned how to build sophisticated Web-based applications.
A major feature of the Ada programming language is the facilities it provides for concurrent programming. Alan Burns and Andy Wellings provide here a thorough and self-contained account of concurrent programming in Ada, and so show users, even beginners, how to harness the full power of the whole language. After giving an overview of the non-concurrent features of Ada, the authors proceed to examine in detail the uses of concurrent programming and the inherent difficulties in providing inter-process communication. The Ada tasking model is then introduced; the way it deals with these and related matters is explained in a number of separate chapters, covering system programming, real-time issues, distribution, object-oriented programming and re-use. This is the first book which deals with concurrent features in the new Ada standard, and it offers practical advice to the programmer needing to use it for embedded systems, while those interested more broadly in the development of programming languages will find many otherwise inaccessible issues probed in depth. It will thus be of value to professional software engineers and advanced students of programming alike; indeed, every Ada programmer will find it essential reading and a primary reference work. For the paperback edition the authors have made revisions throughout the text, updating and correcting where appropriate.
The nearly 60 essays in this book--always easily digestible, often profound, and never too serious--take up large themes and important questions, never shying away from controversy. (Computer Books)