[DGD] Fw: Re: callout cantrip

Shentino shentino at gmail.com
Wed Mar 18 01:57:34 CET 2009


Indeed,

bart, how do you transmit information past the atomic event horizon?

On Tue, Mar 17, 2009 at 5:53 PM, Noah Gibbs <noah_gibbs at yahoo.com> wrote:

>
>  That's a really good idea!  Definitely cleaner than the Phantasmal method
> of re-throwing.
>
>  I don't know the scope of TLS vars relative to atomic functions -- can
> this be used to get a function trace out of an atomic error?  Phantasmal
> encodes it in the error string itself, but that can run afoul of string
> length issues.
>
> --- On Tue, 3/17/09, bart at wotf.org <bart at wotf.org> wrote:
>
> > From: bart at wotf.org <bart at wotf.org>
> > Subject: Re: [DGD] Fw: Re: callout cantrip
> > To: "All about Dworkin's Game Driver" <dgd at dworkin.nl>
> > Date: Tuesday, March 17, 2009, 5:24 PM
> > Well, that idea seems to work quite well..
> >
> > a=2;
> > b=0;
> > catch {
> >   return a/b;
> > } : {
> >   write(caught_error(1));
> > }
> >
> >
> > when called causes:
> >
> > [CAUGHT] Division by zero
> > Object: /std/user#62, program: /std/user, line 187
> >  187 receive_message   /std/user (#62)
> >  182 _receive_message  /std/user (#62)
> >  675 receive_message   /std/player (#79)
> >   23 main              /cmds/wiz/eval
> >   10 exec              /tmp/aidil
> >
> > Code is in the latest gurbalib distribution and in
> > subversion of course.
> >
> > On Sat, 14 Mar 2009 16:02:48 +0100, bart wrote
> > > Talking about such 'tricks', I've been
> > pondering saving a copy of the
> > > call_stack or an 'interpreted version' of it
> > in a tls var when
> > > encountering a caught runtime error so one can rethrow
> > it and
> > > provide a proper trace of the caught error.
> > >
> > > Bart.
> >
> > --
> > Created with Open WebMail at http://www.bartsplace.net/
> > Read my weblog at http://soapbox.bartsplace.net/
> >
> > ___________________________________________
> > https://mail.dworkin.nl/mailman/listinfo/dgd
>
>
>
> ___________________________________________
> https://mail.dworkin.nl/mailman/listinfo/dgd
>



More information about the DGD mailing list