I've been experimenting with a state monad. Below is a list of what is 
included in my stack trace [+] and what isn't [-]. I've noticed that a call 
to a symbol that is bound to the result of a domonad (not sure if that's 
the right way to describe it) doesn't end up in my stack trace. I was 
planning on having a lot of things like that combined arbitrarily (see cc 
in the list below), but if they're not going to show up in stack traces 
(besides calls to m_bind -- which are not informative since they're always 
going to be on the same line), then that makes it tough to debug... Can I 
do something to cause my stack trace to include them somehow? Thanks in 
advance!

[+] call to aa, an ordinary method whose body is (bb {}) shows up in the 
stack trace naturally.

[-] bb is excluded from the stack trace. It is defined to be synonymous 
with symbol cc with (def bb cc). Of course, I don't expect this to be in 
the stack trace since it's not a method call. But I did include it as part 
of poking my stack trace.

[-] cc is excluded from the stack trace. It is bound to the result of a 
state-m domonad: (def cc (domonad state-m .... My thinking (which appears 
to be incorrect) is that this definition of cc should be equivalent to (def 
cc <some fn which takes a state and returns [value new-state]>) which I 
thought would be like a defn and thus would show up in a stack trace when 
called.

[+] dd is a monadic value that's used inside cc (inside the domonad part). 
So dd is a fn that takes a state and returns [value new-state]. dd shows up 
in the stack trace when called.

[+] ee is an ordinary method called by dd. ee shows up in the stack trace.

-- 
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
Note that posts from new members are moderated - please be patient with your 
first post.
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

Reply via email to