@Part(preface, Root="rat.msm")

@comment($Source: e:\\cvsroot/ARM/Rationale/preface.mss,v $)
@comment($Revision: 1.3 $ $Date: 2008/01/31 05:06:18 $)

@UnNumberedSection(Preface)

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

This document starts with an introduction which provides an overview of the
changes. There are then a number of major chapters looking at six key areas
(OOP, access types, 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 December 2004
until March 2006.

I need to thank all those who have helped in the preparation of this document.
First I must acknowledge the help of Ada-Europe and the Ada Resource
Association for financial support for attending various meetings. And then I
must thank those who reviewed earlier versions. There are almost too many to
name, but I must give special thanks to Randy Brukardt, Pascal Leroy and Tucker
Taft of the ARG, to my colleagues on the UK Ada Panel (BSI/IST/5/-/9), and to
James Moore of WG9.

I am especially grateful for a brilliant suggestion of Randy Brukardt which
must be preserved for the pleasure of future generations. He suggested that
this document when completed be called the Ada Language Enhancement Guide. This
means that if combined with the final Ada Reference Manual, the whole document
can then be referred to as the ARM and ALEG. Thanks Randy.

I must also 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 2005. An
integrated description of Ada 2005 as a whole including some further examples
will be found in the latest version of my textbook which is entitled
@i{Programming in Ada 2005} @LocalLink{Target=[R13],Sec=[References],Text={[13]}}.

Finally, for the full details, please consult the Ada 2005 Reference Manual
which is also published in the LNCS series
@LocalLink{Target=[R14],Sec=[References],Text={[14]}}. There is also a version
known as the Annotated Ada Reference Manual which contains much additional
commentary. This will be found online
@LocalLink{Target=[R15],Sec=[References],Text={[15]}}.

@right{@*John Barnes@*Caversham@*England@*December 2007}
