The Right Approach to Exceptions

Jose Armando Garcia jsancio at gmail.com
Mon Feb 20 09:28:33 PST 2012


On Mon, Feb 20, 2012 at 2:37 PM, Andrei Alexandrescu <
SeeWebsiteForEmail at erdani.org> wrote:

> On 2/20/12 10:16 AM, Nick Sabalausky wrote:
>
>> "Andrei Alexandrescu"<SeeWebsiteForEma**il at erdani.org<SeeWebsiteForEmail at erdani.org>>
>>  wrote in message
>> news:jhtq31$u8q$1 at digitalmars.**com...
>>
>>>
>>> Again, I think this thread clarified we need the "Variant[string] info;"
>>> member however we define the hierarchy.
>>>
>>>
>> I disagree. I don't see a need for that.
>>
>
> How would we address custom formatting of e.g. error messages?
>

This may not be D. Gettext says to solve it as follow:

throw new Exception(gettext("Cool English message at
%s.").format(DateTime.now()))

The gettext "compiler" goes through the code an generates all the strings
that need to be localized. The translation teams modifies those string and
you store them in file/map for that language. At runtime the i18n library
turns gettext(...) into a query into that map and returns the actual
localized string. There is a map for the entire process.

Localization can also be disable at compile time by making gettext a
template and generating a "noop" for that operation.

I have been thinking of making a module for i18n model after gettext but
taking advantage of D's language features. Is there some interest in this?

Thanks,
-Jose
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.puremagic.com/pipermail/digitalmars-d/attachments/20120220/91e59664/attachment-0001.html>


More information about the Digitalmars-d mailing list