Rationale for Ada 2012

Preface

Welcome to Ada 2012. This Rationale should enable
those familiar with Ada 2005 to gain a basic understanding of the new
features introduced into Ada 2012 and the reasons for the changes from
Ada 2005.

This document starts with an introduction which provides
an overview of the changes. There are then a number of major chapters
looking at seven key areas (contracts, expressions, structure and visibility,
tasking, general stuff, predefined library and containers) and finally
an epilogue largely concerned with compatibility issues.

Earlier versions of individual chapters were previously
published in the Ada User Journal as a number of separate papers in the
issues from September 2011 until September 2013.

I need to thank all those who have helped in the
preparation of this document. First I must acknowledge the help of AdaCore
and Ada-Europe for financial support for attending various meetings.
And then I must thank those who reviewed have helped in various ways..
There are almost too many to name, but I must give thanks to Randy Brukardt,
Ed Schonberg and Tucker Taft of the ARG, to Jeff Cousins, Alan Burns
and other colleagues on the UK Ada Panel (BSI/IST/5/-/9), to Joyce Tokar
of WG9, and to Tullio Vardanega, Luis Miguel Pinho and Patricia L¢pez
Mart¡nez of Ada-Europe.

I must especially thank Randy for his diligence and
patience in reviewing various drafts of the individual papers and putting
me back on track when I got lost. In addition, I must thank Randy for
his efforts in creating a version of this Rationale for the web and especially
for creating an extremely valuable index which is incorporated here.

Writing this rationale has been a learning experience
for me and I trust that readers will also find the material useful in
learning about Ada 2012. An integrated description of Ada 2012 as a whole
including some further examples will be found in a forthcoming version
of my textbook.

Finally, for the full details, please consult the
Ada 2012 Reference Manual or the version known as the Annotated Ada Reference
Manual which contains much additional commentary. These will be found
online on the AdaIC website at http://www.adaic.org/ada-resources/standards/ada12/.

Moreover, the Ada 2012 Reference Manual is also published
as LNCS 8339 in the same style as this Rationale.