Re: Exceptions and GObject-based libraries



Howdy muppet,

On Fri, 2004-08-27 at 09:23 -0400, muppet wrote:

> perl uses C's setjmp() and longjmp() to implement eval() and die()

Guile uses them as well, except on ia64 I think. The interesting thing
about this fact is that well-tested, large programs -- the language
runtimes -- *can* use setjmp and longjmp effectively.

There's no reason why GObject, which is a kind of language-on-C like
perl5 or guile is a language-on-C, couldn't do the same, also providing
unwind blocks.

> > Also, I wanted to know if there's interest in at least making GObject
> > exception-safe.
> 
> i'm interested, of course, but i fear that this would have to be 
> something that would go into a major version release, or at least 
> something that breaks bincompat.

I think it can be purely additive; for code that throws no exceptions,
it's the same interface, the same behaviour. It just allows another
possibility. Tim was a bit wary on IRC, but it's understandable. Anyway,
I'll mail gtk-devel-list and see what happens. Maybe we're both crazy ;)

Cheers,
-- 
Andy Wingo <wingo pobox com>
http://ambient.2y.net/wingo/



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]