> > > Related question:  Is there any way to "return" side-channel data past
> > > intermediate frames which don't understand the protocol (i.e. no
> > > throwing an exception and prematurely terminating them)?

Thanks for the discussion so far.  However, I'd like to get back to my
first question (which was hijacked by the second).

Is there any way (in Clojure or Java) to walk the current thread's
call stack and retrieve the metadata for Clojure functions currently
on the stack?

e.g.
(with-stack stack
  (doseq frame stack
    (when ^frame ...)))

with-stack could create a new exception, call
Throwable.getStackTrace(), and use introspection to recover the
functions from their names...  But wouldn't that lose the metadata?
And it seems terribly slow.  Is there a better way (which doesn't
involve making functions append metadata to a dynamic variable)?

Thanks again,
Daniel
--~--~---------~--~----~------------~-------~--~----~
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 [EMAIL PROTECTED]
For more options, visit this group at 
http://groups.google.com/group/clojure?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to