Long time listener, first time caller.
Here's the situation I'm in. I got bored and started writing a compiler
from Clojure to the Go runtime. At the moment, I'm struggling with how to
translate the JVM's concurrency idioms for Clojure `Vars` over to Go. In
particular, Clojure Vars rely on thread-local storage
(ref: https://github.com/clojure/clojure/blob/master/src/jvm/clojure/lang/Var.java#L67).
The use case for this isn't immediately obvious, but in essence it enables
downstream local bindings within Clojure source code that don't clobber
global references.
From what I understand, `x/net/context` exists largely to address problems
very similar to this one, but going down that route feels like I could very
easily end up having to pass context as an additional function argument to
half the functions in the compiler. That feels ugly, though the functional
programmer in me is also pleased by it.
Has anyone else run into a similar translation issue to this? What's the
recommended path here?
Cheers,
- V
--
You received this message because you are subscribed to the Google Groups "golang-nuts" group.
To unsubscribe from this group and stop receiving emails from it, send an email to golang-nuts+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.