On Sun, Sep 11, 2011 at 2:42 PM, kjeldahl
<mariusauto-googlegro...@kjeldahl.net> wrote:
> Have you looked at the *swank* buffer? Maybe your's is looking
> differently than mine, but there's lots of stuff that I did not but
> there, and which I would not have there.

Everything in there is output from lein jack-in. Much of it is elisp,
since Leiningen spits out the elisp that's needed to bootstrap a
connection. But it is consistent. (In 1.3.3 it will need a lot less
elisp.) On top of the root value of *out* (which is always stdout of
lein), each swank thread necessarily must bind *out* to a writer
connected to the slime socket, otherwise the repl wouldn't get hooked
up.

> My issues with this is related to running servers and catching debug
> output from it while it is running (yeah, I really should use a log
> file, but that's another topic). When I tried doing this from within
> Emacs, it became a detective hunt trying to figure it all out (and I
> probably never did). When I run it in a normal shell (lein repl),
> everything works as expected, and all threads output to the console
> they way I would expect.
>
> I wrote more details about it in the following post to this list:
>
> http://groups.google.com/group/clojure/browse_thread/thread/55849f0296530de8/9f2ca18530a4e28c?lnk=gst&q=kjeldahl#9f2ca18530a4e28c
>
> I'm no expert, but if I had to choose between getting all output in a
> file, or some output in the repl buffer and some in *swank*, I would
> prefer the former (which is what I believe cake actually does).

Putting *all* output in a file (so nothing is visible in the repl) is
never going to be the default behaviour. The question is whether swank
should use alter-var-root instead of binding to change the value of
*out*. I don't personally work with any multithreaded programs that
don't use a logging framework, so I haven't run into this myself, but
it seems like as long as you're not relying on the stdout of the
process it might be better to use the alter-var-root approach, at
least when swank is launched via lein. Does that sound helpful?

-Phil

-- 
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