From: Michael Rohan <michael@zanyblue.com>
Subject: Re: Ada.Locales pseudo-string types
Date: Mon, 6 Aug 2012 10:37:00 -0700 (PDT)
Date: 2012-08-06T10:37:00-07:00 [thread overview]
Message-ID: <a6439817-c750-4c5e-a0db-2c37331b474e@googlegroups.com> (raw)
In-Reply-To: <78707b6e-88a3-453a-a37c-840f7a62e703@googlegroups.com>
On Monday, August 6, 2012 9:45:46 AM UTC-7, Marius Amado-Alves wrote:
> Ada 2012 has this new Ada.Locales package (annex A.19) containing
>
>
>
> type Language_Code is array (1 .. 3) of Character range 'a' .. 'z';
>
> type Country_Code is array (1 .. 2) of Character range 'A' .. 'Z';
>
>
>
> Language_Unknown : constant Language_Code := "und";
>
> Country_Unknown : constant Country_Code := "ZZ";
>
>
>
> function Language return Language_Code;
>
> function Country return Country_Code;
>
>
>
> Now how does one print the darn codes? Should not Ada.Text_IO.Put for String work? Should not the types be convertible to String?
>
> Thanks a lot.
Hi,
It this really the all that's defined for Locales! At least the language code is of the correct length 1 .. 3, however the country code should also be 1 .. 3,
On Monday, August 6, 2012 9:45:46 AM UTC-7, Marius Amado-Alves wrote:
> Ada 2012 has this new Ada.Locales package (annex A.19) containing
>
>
>
> type Language_Code is array (1 .. 3) of Character range 'a' .. 'z';
>
> type Country_Code is array (1 .. 2) of Character range 'A' .. 'Z';
>
>
>
> Language_Unknown : constant Language_Code := "und";
>
> Country_Unknown : constant Country_Code := "ZZ";
>
>
>
> function Language return Language_Code;
>
> function Country return Country_Code;
>
>
>
> Now how does one print the darn codes? Should not Ada.Text_IO.Put for String work? Should not the types be convertible to String?
>
> Thanks a lot.
Hi,
Looks like this probably needs to be adjusted Language 1 .. 3 is OK, but Country should really be Territory 1 .. 3, e.g., Latin America has the code "419". It is also missing a definition for the Script, e.g., Simplified Chinese as spoken in China is zh_Hans_CN, and Serbian has two variants for the same territory:
sr_Cyrl_SR, Serbian as spoken in Serbia using the Cyrillic script
sr_Latn_SR, Serbian as spoken in Serbia using the Latin script
So the locales package should be adjusted to include
type Script_Code is array (1 .. 4) of Character; -- 'a' .. 'z' + 'A' .. 'Z'
function Script return Script_Code;
There's nothing here to adjust locale, etc. I guess this is start on making Ada locale aware but it looks like there's a lot of additional work needed.
I've done some work in this area with my ZanyBlue library (http://zanyblue.sourceforge.net) and it would be good to see a more globalization friendly Ada.
Take care,
Michael
next prev parent reply other threads:[~2012-08-13 9:02 UTC|newest]
Thread overview: 69+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-08-06 16:45 Ada.Locales pseudo-string types Marius Amado-Alves
2012-08-06 17:10 ` Marius Amado-Alves
2012-08-06 19:15 ` J-P. Rosen
2012-08-06 19:34 ` Simon Wright
2012-08-06 20:07 ` Marius Amado-Alves
2012-08-06 20:57 ` Simon Wright
2012-08-06 21:09 ` Vasiliy Molostov
2012-08-06 23:07 ` Adam Beneschan
2012-08-06 23:23 ` Vasiliy Molostov
2012-08-06 23:46 ` Adam Beneschan
2012-08-07 1:17 ` Vasiliy Molostov
2012-08-07 7:20 ` Dmitry A. Kazakov
2012-08-07 7:43 ` Jacob Sparre Andersen
2012-08-09 20:47 ` Randy Brukardt
2012-08-07 8:44 ` Marius Amado-Alves
2012-08-07 13:14 ` Marius Amado-Alves
2012-08-07 15:42 ` Adam Beneschan
2012-08-07 18:22 ` Marius Amado-Alves
2012-08-07 20:10 ` Adam Beneschan
2012-08-07 20:42 ` Marius Amado-Alves
2012-08-07 21:38 ` Adam Beneschan
2012-08-08 7:04 ` Niklas Holsti
2012-08-08 7:18 ` Dmitry A. Kazakov
2012-08-08 7:37 ` Niklas Holsti
2012-08-08 8:09 ` Dmitry A. Kazakov
2012-08-08 11:14 ` Niklas Holsti
2012-08-08 11:59 ` Dmitry A. Kazakov
2012-08-08 14:01 ` Niklas Holsti
2012-08-09 7:48 ` Dmitry A. Kazakov
2012-08-09 8:31 ` Niklas Holsti
2012-08-09 12:17 ` Dmitry A. Kazakov
2012-08-09 15:25 ` Niklas Holsti
2012-08-09 16:43 ` Dmitry A. Kazakov
2012-08-08 8:28 ` J-P. Rosen
2012-08-08 11:35 ` Niklas Holsti
2012-08-08 14:05 ` Georg Bauhaus
2012-08-08 7:32 ` J-P. Rosen
2012-08-08 8:17 ` Niklas Holsti
2012-08-08 8:33 ` J-P. Rosen
2012-08-08 11:44 ` Niklas Holsti
2012-08-09 21:00 ` Randy Brukardt
2012-08-08 8:35 ` Dmitry A. Kazakov
2012-08-08 9:32 ` Marius Amado-Alves
2012-08-08 10:11 ` Dmitry A. Kazakov
2012-08-08 11:28 ` Marius Amado-Alves
2012-08-08 11:30 ` Marius Amado-Alves
2012-08-08 11:35 ` Marius Amado-Alves
2012-08-08 12:24 ` Dmitry A. Kazakov
2012-08-08 11:52 ` Niklas Holsti
2012-08-08 13:21 ` Dmitry A. Kazakov
2012-08-08 9:07 ` Marius Amado-Alves
2012-08-07 20:43 ` Marius Amado-Alves
2012-08-07 21:59 ` Robert A Duff
2012-08-07 22:19 ` Adam Beneschan
2012-08-08 0:37 ` Robert A Duff
2012-08-07 15:26 ` Adam Beneschan
2012-08-07 18:07 ` Marius Amado-Alves
2012-08-07 17:51 ` Simon Wright
2012-08-06 20:00 ` Marius Amado-Alves
2012-08-06 19:49 ` Jacob Sparre Andersen
2012-08-06 20:11 ` Marius Amado-Alves
2012-08-06 17:37 ` Michael Rohan [this message]
2012-08-06 18:23 ` Marius Amado-Alves
2012-08-06 19:36 ` Michael Rohan
2012-08-09 21:15 ` Randy Brukardt
2012-08-07 5:57 ` Jeffrey R. Carter
2012-08-07 15:46 ` Adam Beneschan
2012-08-07 17:51 ` Jeffrey R. Carter
2012-08-09 21:17 ` Randy Brukardt
replies disabled
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox