The definitive text on the new version of Ada Ada 2005 written by one of the languages creators. Barnes is to Ada what Kernighan & Ritchie are to C, or as Stroustrup is to C++. Previous editions have sold over 150,000 copies.
![]() Sell Back Your Copy for $5.14
Whether you buy it used on Amazon for $49.00 or somewhere else, you can sell it back through our Book Trade-In Program at the current price of $5.14.
Used Price$49.00
Trade-in Price$5.14
Price after
Trade-in$43.86 |
The definitive text on the new version of Ada Ada 2005 written by one of the languages creators. Barnes is to Ada what Kernighan & Ritchie are to C, or as Stroustrup is to C++. Previous editions have sold over 150,000 copies.
Programming in Ada 2005
John Barnes
This book is going to be a tremendous resource that will prove useful for many years. It combines a broad description of the entire language, including its predefined libraries, with an in-depth study of a number of areas of particular interest such as object-oriented techniques or concurrency. It includes extensive examples showing how the numerous features of Ada can be made to work together in practical situations.
~ Pascal Leroy, Chairman of the Ada Rapporteur Group.
Programming in Ada 2005 is the definitive tutorial and reference for a ground-breaking new version of Ada (Ada 2005), a significant revision of the language of choice for applications where safety, security and reliability are paramount.
The major changes from Ada 95 are:
Ø A new OO model to incorporate Java-style multiple inheritance and more rigorous error analysis prior to execution;
Ø Synchronized interfaces to unify the OO and concurrent domains a radical innovation in language design;
Ø More flexible but totally safe manipulation of pointers;
Ø An improved structure enabling large programs to be decomposed more easily;
Ø Many extensions to the Real-Time facilities, keeping Ada ahead of other languages for embedded applications;
Ø Improved interfacing to other systems and languages;
Ø Enhanced standard library support including containers.
John Barnes was a key member of the original Ada design team and has been a pivotal figure in its evolution ever since. Over 150,000 students and software engineers have learned Ada from previous editions widely praised for their witty and urbane style. He is also the author of High Integrity Software: The SPARK Approach to Safety and Security.
Product Details
Would you like to update product info or give feedback on images?
|
|
Share your thoughts with other customers:
|
||||||||||||||||||||||
|
Most Helpful Customer Reviews
11 of 11 people found the following review helpful:
5.0 out of 5 stars
A definitive work,
By
This review is from: Programming in Ada 2005 with CD (Paperback)
This is a definitive work by someone that clearly understands the history, culture and technical aspects of Ada. Thank you (once again) to John Barnes ! This is the Ada textbook you need.
Main gripe is that, like so much of the Ada community, the author seems loathed to use pictures, instead preferring detailed text. Perhaps this culture comes from the Ada LRM. But it's very well written detailed text !
4 of 4 people found the following review helpful:
4.0 out of 5 stars
a strictly intermediate textbook,
By Dan'l Miller (Dallas TX) - See all my reviews
This review is from: Programming in Ada 2005 with CD (Paperback)
Excellent textbook whose main message could be summarized as: Ada2005 is not your father's Ada83. Or Ada83 corrected and done right. Or perhaps by unstated-by-Barnes implication: C++ and Java done right, assuming an Algol68/Pascal syntax instead of C syntax.
For all practical purposes, this textbook assumes that you already know a non-Ada2005 object-oriented imperative programming lanugage, and that you are interested in learning Ada as an additional OO imperative programming langugage beyond the ones that you already know, such as Ada83, Ada95, Java, C++, C#, Objective C, Python, or Smalltalk. (Conversely, this textbook rarely mentions non-Ada2005 programming languages other than Ada83 and Ada95.) Hence it is not for true beginners who do not already know basic imperative or OO concepts, because practically no introduction of or justification of such basics is provided. Although, regarding the readers for whom syntax and semantics that generally correspond to other OO imperative programming languages is their primary interest, they will be exhilarated by Barnes' illumination of the orthogonality, tunability, and flexibility that Ada's syntax permits to go from highly-efficient hardware device drivers up through quite-sophisticated abstractions & enforcements (including now, in Ada2012, declaration of Eiffel-style invariants, which of course are absent in this Ada2005 textbook) when compared to nearly any other programming language: OO or imperative or generic or pure-functional or otherwise. Conversely, this textbook (and the reason that I deducted one star) provides very few details regarding how the Ada run-time checks operate and only partially covers how the Ada compile-time checks operate. When writing programs in Ada, one must not only be thinking of the syntax, but of a more-elaborate semantics than is present in nearly any other programming language, because few other programming languages attempt to perform mostly a priori as elaborate of a proof-by-mathematical-induction of the correctness of the lifetime of memory allocation as Ada does. 1) A priori design of strong- versus weak-links in otherwise a posteriori smart-pointer synchronous garbage destruction in C++, 2) Ada's largely a priori proof-construction mostly at compile time for the compiler or runtime to overtly/synchronously know when the end-of-life occurs, and 3) the various flavors of asynchronous automatic garbage collection (AGC) in many programming lanugages are 3 competing schools of thought, where it is largely C++ versus Ada versus the rest of the imperative-programming world, so it is no trivial matter in learning Ada. Multiple times in this textbook, Barnes touches on this memory-allocation end-of-life topic with an it-just-works attitude without enumerating all the nontrivial subtleties (as the LRM and AARM do) that can precipitate the situation where the Ada compiler can emit a vast variety of compile-time errors that inform the programmer that the code's malformedness or sloppiness a) blocks incremental formation of the mathematical proof and b) hence likely has at least one bug. On this topic of determining memory allocations' end of life, I do sympathize with the reviewer who instructed us all in effect: go read the freely-available-for-download _Ada Reference Manual_ (LRM) or better yet the freely-available-for-download _Annotated Ada Reference Manual_ (AARM) and to a lesser degree the freely-available-for-download _Ada Rationale_ to learn about how this proof-by-mathematical-induction is constructed. Although even in those references, the information is highly scattered piecemeal. I hope that the author will add a lengthy chapter on this topic in the next edition, because it *definitely* needs more illumination (without a programmer needing to slog through the 1,220-page AARM to interpret all the subtle nuances) for a programmer to understand all the compile-time errors regarding why the program is being rejected due to the compiler's incremental formation of this mathematical proof followed by the runtime's enforcement a posteriori of what the compiler could not accomplish a priori.
4 of 4 people found the following review helpful:
4.0 out of 5 stars
Good Reference,
By
This review is from: Programming in Ada 2005 with CD (Paperback)
I agree that the book may not be for beginners but it is a good reference to have while coding. It is much easier to have this by your side than going and searching a document on the computer constantly. The book is a little vague on the topics but it is enough information to get you started in the right direction. If you are looking for a complete How-To guide for Ada then this is not the manual for you. If you are looking for a book that will give you some guidance on syntax and functions and only need a reference then this is the book for you.
Share your thoughts with other customers: Create your own review
|
|
Tags Customers Associate with This Product(What's this?)Click on a tag to find related items, discussions, and people.
|
|
This product's forum
Active discussions in related forums
Search Customer Discussions
|
Related forums
|