In this line:
(if TRACE (do (println [:OFACTS (count ofacts)])
(clojure.stacktrace/e)))
the StackOverflowError must be occurring in the evaluation of ofacts.
The error breaks out of the evaluation, preventing
(clojure.stacktrace/e) from being evaluated. The error sends you back to
the Clojure repl prompt, as you showed:
StackOverflowError clojure.lang.RT.nth (RT.java:764)
rete.core=>
Here, at the "rete.core=>" prompt after the error, is where you want to
call (clojure.stacktrace/e).
- Bruce
On Fri, Nov 8, 2013, at 06:10 AM, Jim wrote:
> On 08/11/13 10:46, ru wrote:
> >
> > I am afraid, that I am not sure where to put (clojure.stacktrace/e) to
> > make it work :(
> > Or, may be this is not an exception?
>
> use (clojure.stacktrace/e) after the exception has been thrown to get
> some more information than just a line. Don't put it in your code, but
> rather call it on the repl right after the error. It will probably point
> you to some more places to have a look. Also, as John suggested, if
> you've got a lot of lazy operations that might be the cause. Have you
> looked at reducers?
>
> Jim
--
--
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to [email protected]
Note that posts from new members are moderated - please be patient with your
first post.
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en
---
You received this message because you are subscribed to the Google Groups
"Clojure" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
For more options, visit https://groups.google.com/groups/opt_out.