[phobos] Calling abort() on unhandled exception

Sean Kelly sean at invisibleduck.org
Fri Jul 30 08:29:46 PDT 2010


Another alternative is deriving all exceptions that shouldn't show a trace by default from an exception with a custom toString that omits this info. 

Sent from my iPhone

On Jul 30, 2010, at 7:50 AM, Steve Schveighoffer <schveiguy at yahoo.com> wrote:

> Um, no.  Exceptions can easily be uncaught (oops, forgot a try catch!).  I don't 
> want the end result of an uncaught exception to be a bug that's impossible or 
> difficult to determine because no stack trace was printed.  Let's consider that 
> an exception may not be easily repeated and is most likely encountered by a 
> user, not a developer.  Giving a mechanism to communicate the problem as 
> completely as possible from the user developer should be the default.
> 
> We should classify any exception or error that gets thrown outside of main to be 
> an exception that was not planned for by the developer, and therefore a program 
> error.  This should trigger as much info as possible, definitely including a 
> stack trace, and possibly a core dump (though, dumping core after catching an 
> exception is next to useless).
> 
> If you want to avoid printing stack traces, catch the exception inside of main.  
> I don't think it's too much to ask.
> 
> -Steve
> 
> 
> 
> ----- Original Message ----
>> From: Sean Kelly <sean at invisibleduck.org>
>> To: Discuss the phobos library for D <phobos at puremagic.com>
>> Sent: Fri, July 30, 2010 10:42:51 AM
>> Subject: Re: [phobos] Calling abort() on unhandled exception
>> 
>> On Jul 29, 2010, at 10:01 PM, Andrei Alexandrescu wrote:
>>> 
>>> I for  one really enjoy stuff like:
>>> 
>>> void main(string[] args)
>>> {
>>>   enforce(args.length > 1, "Usage: prog  arg");
>>>   ...
>>> }
>>> 
>>> Having a stack trace  tacked there... not good. Exception messages are meant 
>> to be seen by users.  Stack traces are meant to be seen by the programmer. The 
>> fact that we print both  by default doesn't sit well at all.
>> 
>> Fair enough.  Maybe they should  only be displayed for Errors, not Exceptions?
>> 
>>> Is it reasonable to  say that Exception is the "nicer" thing and Throwable is 
>> the "less nice" thing  that is handled differently? Then come bus errors, which 
>> are "not nice at  all".
>> 
>> It is.
>> _______________________________________________
>> phobos  mailing list
>> phobos at puremagic.com
>> http://lists.puremagic.com/mailman/listinfo/phobos
>> 
> 
> 
> 
> _______________________________________________
> phobos mailing list
> phobos at puremagic.com
> http://lists.puremagic.com/mailman/listinfo/phobos


More information about the phobos mailing list