Re: Question about throwing errors

2009-03-11 Thread David Nolen
Doesn't error-kit do this?

On Wed, Mar 11, 2009 at 10:15 PM, Mark Engelberg
wrote:

>
> I'm thinking about implementing a backtracking mechanism that throws
> errors as a way to escape out of the current computation and try
> another possibility.  I'd want to create a specific error to escape,
> and the backtracking mechanism should only catch this very specific
> error.
>
> Now, I vaguely recall some thread on here a while ago about how this
> is very hard to do in Clojure, because Clojure wraps the errors inside
> of other errors as they work their way outwards, so you can't just
> catch a very specific error.  I think there was some sort of
> workaround involving catching every error, and looking deep inside the
> stack of errors to find the specific error, and if not found, pass it
> on up the chain.
>
> Am I remembering this "gotcha" correctly?  If so, can someone please
> spell out the workaround for me again?
>
> Thanks.
>
> >
>

--~--~-~--~~~---~--~~
You received this message because you are subscribed to the Google Groups 
"Clojure" group.
To post to this group, send email to clojure@googlegroups.com
To unsubscribe from this group, send email to 
clojure+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/clojure?hl=en
-~--~~~~--~~--~--~---



Question about throwing errors

2009-03-11 Thread Mark Engelberg

I'm thinking about implementing a backtracking mechanism that throws
errors as a way to escape out of the current computation and try
another possibility.  I'd want to create a specific error to escape,
and the backtracking mechanism should only catch this very specific
error.

Now, I vaguely recall some thread on here a while ago about how this
is very hard to do in Clojure, because Clojure wraps the errors inside
of other errors as they work their way outwards, so you can't just
catch a very specific error.  I think there was some sort of
workaround involving catching every error, and looking deep inside the
stack of errors to find the specific error, and if not found, pass it
on up the chain.

Am I remembering this "gotcha" correctly?  If so, can someone please
spell out the workaround for me again?

Thanks.

--~--~-~--~~~---~--~~
You received this message because you are subscribed to the Google Groups 
"Clojure" group.
To post to this group, send email to clojure@googlegroups.com
To unsubscribe from this group, send email to 
clojure+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/clojure?hl=en
-~--~~~~--~~--~--~---