>I think dynamic vars in particular would be problematic. The repl is built 
>around being able to set! certain vars, and you can't do that to the same 
>binding from multiple threads.

The dynamic thread bindings are established within the function passed to 
queue-eval, though, so it seems like it will be as close to sensible as 
possible. (That is: use the bindings that were current at the point when the 
evaluation was started.)

I just looked into the interruption code, which is the only thing that looks 
like it actually depends on the serial nature of the evaluation. I think it 
would be possible to make it work with parallel evaluations, though, by storing 
a "message id to thread" map on the session instead of a single message id and 
thread. That would let you interrupt the thread for a given evaluation.

Carlo

-- 
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
--- 
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 clojure+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to