The Right Approach to Exceptions

foobar foo at bar.com
Mon Feb 20 09:05:38 PST 2012


On Monday, 20 February 2012 at 16:37:28 UTC, Andrei Alexandrescu 
wrote:
> On 2/20/12 10:16 AM, Nick Sabalausky wrote:
>> "Andrei Alexandrescu"<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?
>
> Andrei

Separation of concerns - exceptions are meant to notify the 
*developer* of errors. User facing error messages is a separate 
concern that exceptions should not be responsible for. it's not 
just outsourcing the translation strings, it's the developer's 
job to determine what if at all should be done with the exception.

Trivial example:  My mom enters a misspelled URL (e.g. 
goggle.com) in her browser, she does not know or care what 404 
means. instead she gets a formated page suggesting her to check 
her spelling and probably a suggestion to try google.com instead.

the exception notifies the developer of the error, the developer 
does extra processing (e.g. to suggest similar valid websites) 
and the user get a friendly notification. clearly it doesn't make 
sense to put all this into the exception.


More information about the Digitalmars-d mailing list