Rationale for Ada 2012
7.1 Overview of changes: Predefined library
The WG9 guidance document
[1]
does not specifically identify problems in this area other than through
a general exhortation to remedy shortcomings.
We have already discussed
the additional library packages in the area of tasking and real-time
in Chapter
5). There are also many additional
library packages concerning containers and these will be discussed in
Chapter
8. The following Ada issues cover
the relevant changes in other areas and are described in detail in this
chapter:
Bounded containers and other container issues
Add a From parameter to Find_Token
Extend file name processing in Ada.Directories
Adding locale capabilities
String encoding package
Wide_Character and Wide_Wide_Character
classification and folding
Questions on locales
Use latest version of ISO/IEC 10646
Stream_IO should be preelaborated
Defaulted environment variable queries
Internationalization of Ada
These changes can be grouped as follows.
A number of enhancements concern strings and characters.
These include comprehensive new packages to support conversions between
strings (and wide strings and wide-wide strings) and the UTF-8 and UTF-16
encodings (
137).
It is important to note that Ada 2012 directly supports source code in
UTF-8 (
286).
Additional facilities are also provided for the classification of characters
and new packages added for similar operations on wide characters and
wide wide characters (
185,
266).
A minor change is the provision of a further procedure
Find_Token{
with an additional parameter giving the start of the search (
31).
The file name processing in
Ada.Directories
is enhanced to overcome some shortcomings (
49).
A new package is added to enable a program to identify
the locale in which it is being used (
127,
233).
There are a number of additional facilities regarding
hashing and case insensitive comparisons. The hashing issues really relate
to containers but are briefly mentioned here for completeness (
1,
286).
Finally, other improvements are that the package
Ada.Streams.Stream_IO is now preelaborated
(
283)
and that an additional function
Value is added
to the package
Ada.Environment_Variables (
285).
© 2011, 2012, 2013 John Barnes Informatics.
Sponsored in part by: