GNAT: internationalization of error diagnosis messages

Vadim Godunko
Wed Apr 23 10:00:00 GMT 2003

Geert Bosch wrote:
> Proper translation of all GNAT messages would be a huge job
> requiring large ongoing maintenance efforts. Also, translation
> of these messages is a job that requires a detailed knowledge of
> the Ada language, English and the foreign target language.
> The messages in GNAT have been continuously improved and tweaked
> over the last ten years based on thousands of feedback reports
> of students, teachers and programmers all around the world.
> Also the extensive use of terms defined in the Ada standard
> (which is a publicly available and quite readable document)
> would mean that translated diagnostics would require access
> to a translated version of the standard. Because of this, I
> think no internationalization would be better than partial
> internationalization.
I agree. Several russian enthusiast starting translation of diagnosis 
messages into russian language and creating the required testsuite. I 
make message extractor and this patch for help them.

> I believe that your patch only addresses the internationalization
> of one specific kind of messages.

Patch allow internationalization primary of gnat1 messages. May be this 
way allow internationalization of gnatbind and gnatmake. I can't analize 
this. Others gnat tools use Ada.Text_IO for message output and require 
another way.

> The biggest issue however
> is that there are no comments at all to document the code.
> In GNAT, every package needs comments describing the interface
> at a sufficiently high level.
> There are also issues with the code itself, such as the
> confusing use of Message as the internationalized version
> of Msg and the interface of Intl, which should not require
> returning unconstrained strings.
I agree.

> Maybe a good first step would be to propose a package spec
> for GNAT.Internationalization or GNAT.Intl, which allows for
> efficient internationalization of programs written in Ada.
> Combined with Ada-aware versions of xgettext and related
> utilities, this would be a very useful extension to allow
> people to write programs that can be internationalized.
Existing Ada standard can't allow solve 
internationalization/localization problem (at least for russian-speeking 
countries). Only one that we may solve is a compiler message 
translation. And I can't want to begin more one unusable project.

Vadim Godunko

More information about the Gcc-patches mailing list